javascript数据类型转换

2018-03-31  本文已影响0人  novaDev

类型转换表格

value to String to Number to Boolean
undefined "undefined" NaN false
null "null" 0 false
true "true" 1
false "false" 0
"" 0 false
"1.2" 1.2 true
"one" NaN true
0 "0" false
-0 "0" false
NaN "NaN" false
Infinity "Infinity" true
-Infinity "-Infinity" true
1 "1" true
{} 见下文(Object=>String \ Number) 见下文(Object=>String \ Number) true
[] "" 0 true
[9] "9" 9 true
['a'] "a" NaN true
function(){} 见下文(Object=>String \ Number) NaN true

toFixed(), toExponential(), toPrecision()

Object=>String \ Number

"+" "==" "!=" ">" "<" ">=" "<=" 与Object的自动转换

二元+

eg:

1 + 2 //3
"1" + "2" //"12"
"1" + 2 //"12"
1 + {} //"1[object Object]"
true + true //2
2 + null //2
2 + undefined //NaN
1 + 2 + "3" //"33"
1 + (2 + "3") //"123"

一元运算符

+

将操作数转换为Number

-

将操作数转换为Number,并取反

==的转换规则

eg:

null == undefined //true
"0" == 0 //true, 转化为数字后比较
0 == false //true, 转化为数字后比较
"0" == false //true, 转化为数字后比较

比较运算符

+操作符和比较运算符的异同

>= 和 <=

>=其实是“不小于”的意思,在判断相等的时候,并不会根据==的规则来进行判断

上一篇 下一篇

猜你喜欢

热点阅读