码迷,mamicode.com
首页 > 其他好文 > 详细

ECMAScript5.1的运算符、类型转换总结

时间:2017-04-13 08:55:59      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:表示   多个   实现   数值   script   相加   参数   相等   数据类型   

一、运算符优先级

从高到低

运算符 说明
. [] () 字段访问、数组索引、函数调用和表达式分组
++ -- - ~ ! delete new typeof void 一无运算符、返回数据类型、对象创建、未定义的值
* / % 相乘、相除、求余
+ - + 相加、相减、字符串相加
<< >> >>> 位移
< <= > >= instanceof 小于、小于或等于、大于、大于或等于、是否为特定类的实例
== != === !== 相等、不相等、全等、不全等
& 按位“与”
^ 按位“异或”
按位“或”
&& 逻辑“与”
|| 逻辑“或"
?: 条件运算符
= OP= 赋值、赋值去处(+=、-=)
, 多个计算

二、类型检测与转换

以下都是规范中的内部方法,不可直接调用

 

方法 说明
ToPrimitive 两个参数:值、期望类型。转换为指定的类型
ToBoolean 转换为boolean值,如果参数是undefined、Null、0、NaN、或者String长度为零,结果为false,object或其他为true
ToNumber 转换为数值类型
ToInteger 转换为整型,应该是16类整型
ToInt32 32位有符号整型
ToUint32 32位无符号整型
ToUint16 16位无符号整型
ToString 转换为字符串类型,如果Number类型,转换特殊处理。浮点数精度
ToObject 转换为对象类型
CheckObjectCoercible 检测参数是否可以通过ToObject转换
IsCaller 检测参数是否为一个可调用对象,Object有call方法实现的才行,其他(Number\Boolean\String\Null\Undefined)等不行
SameValue 两个对象是否相等的算法

提供的方法,可以直接调用

方法 说明
parseInt 转换为整型,两个参数:一个数为可转换为数值的内容,第二个参数表示进制:2, 8, 10, 16,默认10进制。但如果第一个参数的值以0x或0X开头则认为是16进行
parseFloat 转换为一个浮点型数值
IsNaN 判断值是否为NaN,是NaN则为false
IsFinit 判断值是为NaN、+Max、+Min,是NaN、+Max、+Min则为false

ECMAScript5.1的运算符、类型转换总结

标签:表示   多个   实现   数值   script   相加   参数   相等   数据类型   

原文地址:http://www.cnblogs.com/cqhaibin/p/6702190.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!