JavaScript 一元加号运算符(+)
示例
一元加号(+)在其操作数之前,并求值为其操作数。如果尚未将操作数转换为数字,它将尝试将其转换为数字。
语法:
+expression
返回值:
一个Number。
描述
一元加号(+)运算符是将某物转换为数字的最快(也是首选)方法。
它可以转换为:
整数(十进制或十六进制)和浮点数的字符串表示形式。
布尔值:true,false。
null
无法转换的值将计算为NaN。
例子:
+42 //42 +"42" //42 +true //1 +false //0 +null //0 +undefined //N +NaN //N +"foo" //N +{} //N +function(){} //N
请注意,尝试转换数组可能会导致意外的返回值。
在后台,首先将数组转换为其字符串表示形式:
[].toString() === ''; [1].toString() === '1'; [1, 2].toString() === '1,2';
然后,运算符尝试将这些字符串转换为数字:
+[] //0 ( === +'' ) +[1] //1 ( === +'1' ) +[1, 2] //N ( === +'1,2' )