JavaScript类型转换与运算符

来源:互联网 发布:mysql递归函数 编辑:程序博客网 时间:2024/06/05 15:40

  JavaScript是一种无类型语言(更为精确的说,是一种松散类型,动态类型的语言)。这就是说,再声明变量时无需指定数据类型,这使JavaScript具有灵活性和简单性。在代码执行过程中,JavaScript会根据需要自动进行类型转换。例如,如果传递给方法document.write()的是一个数字,JavaScript会自动将其转换成与之等价的字符串表示。

 1. 在JavaScript中,数据类型有一定的转换规则。

转换为逻辑数据类型 类型 转换后的结果 Undifined false Null false 数值型 为0或NaN,则结果为false,否则为true 字符串类型 若长度为0,则结果为false,否则为true 其他类型 true 转换为数值类型 类型 转换后的结果 Undefined NaN Null 0 逻辑型 值为true,则结果为1,值为false,则结果为0 字符串型 若内容为数字,则结果为相应数字,否则为NaN 其他类型 NaN

转换为字符串数据 类型 转换后的结果 Undefined “Undefined” Null “NaN” 逻辑型 值为true,则结果为“true”,值为false,则结果为“false” 数值型 若内容为数字,则结果为相应数字,否则为NaN 其他类型 若存在,则为toString()方法的值,否则为“undefined”

2. 比较运算符

比较运算符 运算符 含义 举例 运算结果 < 小于 4<8 true <= 小于或等于 6<=5 false > 大于 4>3 true >= 大于或等于 5>=5 true != 不等于 6!=5 true == 等于 6==5 false === 等于(且类型相同) 5==="5" false !=== 不等于(或类型不同) 5!==="5" true

 

 

位移运算符 运算符 含义 举例 中间步骤 运算结果 << 左移位(空出的位补0) 4<<3 00000100左移3位,结果为00100000 32 >> 右移位(空出的位补符号位) -9>>2 11110111右移2位,结果为11111101 -3 >>> 右移位(空出的位补0) 32>>>3 00100000右移3位,结果为00000100 4

 

Javascript运算符的优先级与结合性 优先级 结合性 运算符 最高 向左 .,[],()   向右 ++,--,-,~,!,delete,new,typeof,void   向左 *,/,%   向左 +,-   向左 <<,>>,>>>   向左 <,<=,>,>=,in,instanceof   向左 ==,!=,===,!====   向左 &   向左 ^   向左 |   向左 &&   向左 ||   向左 ?:   向右 =   向右 *=,/=,%=,+=,-=,<<=,>>=,>>>=,&=,^=,|= 最低 向左 ,

 

原创粉丝点击