玉祥平台客服-15087858732

标题: ECMAScript5.1的运算符、类型转换总结 [打印本页]

作者: fteair    时间: 2020-3-13 09:13
标题: ECMAScript5.1的运算符、类型转换总结
一、运算符优先级
[size=13.3333px]从高到低
运算符说明
. [] ()字段访问、数组索引、函数调用和表达式分组
++ -- - ~ ! delete new typeof void一无运算符、返回数据类型、对象创建、未定义的值
* / %相乘、相除、求余
+ - +相加、相减、字符串相加
<< >> >>>位移
< <= > >= instanceof小于、小于或等于、大于、大于或等于、是否为特定类的实例
== != === !==相等、不相等、全等、不全等
&按位“与”
^按位“异或”
按位“或”
&&逻辑“与”
||逻辑“或"
?:条件运算符
= OP=赋值、赋值去处(+=、-=)
,多个计算
二、类型检测与转换
[size=13.3333px]以下都是规范中的内部方法,不可直接调用

方法说明
ToPrimitive两个参数:值、期望类型。转换为指定的类型
ToBoolean转换为boolean值,如果参数是undefined、Null、0、NaN、或者String长度为零,结果为false,object或其他为true
ToNumber转换为数值类型
ToInteger转换为整型,应该是16类整型
ToInt3232位有符号整型
ToUint3232位无符号整型
ToUint1616位无符号整型
ToString转换为字符串类型,如果Number类型,转换特殊处理。浮点数精度
ToObject转换为对象类型
CheckObjectCoercible检测参数是否可以通过ToObject转换
IsCaller检测参数是否为一个可调用对象,Object有call方法实现的才行,其他(Number\Boolean\String\Null\Undefined)等不行
SameValue两个对象是否相等的算法
[size=13.3333px]提供的方法,可以直接调用
方法说明
parseInt转换为整型,两个参数:一个数为可转换为数值的内容,第二个参数表示进制:2, 8, 10, 16,默认10进制。但如果第一个参数的值以0x或0X开头则认为是16进行
parseFloat转换为一个浮点型数值
IsNaN判断值是否为NaN,是NaN则为false
IsFinit判断值是为NaN、+Max、+Min,是NaN、+Max、+Min则为false


作者: 张兴康    时间: 2020-3-13 17:19

作者: 张兴康    时间: 2020-3-13 17:30

作者: fteair    时间: 2020-3-17 17:15
张兴康 发表于 2017-4-13 17:30


作者: 张兴康    时间: 2020-3-17 20:32





欢迎光临 玉祥平台客服-15087858732 (http://bbs.delit.cn/) Powered by Discuz! X3.2