JS一元加号

414 阅读1分钟

JS一元加号

一元加号运算符 + 在其操作数之前,并计算其操作数;但如果尚未将其转换为数字,则尝试将其转换为数字。

console.log(+'')  // 0
console.log(+true)  // 1
console.log(+false)  // 0
console.log(+'hello')  // NaN

console.log(1 + +"2" + "2")  // 32
// 第一个+"2"中的加号是一元加操作符,+"2"会变成数值2,因此1+ +"2"相当于1+2=3
// 然后和后面的字符串“2”相合并,变成了字符串"32"

一元加法是将某事物转换为数字的最快和首选方法,因为它不对数字执行任何其他操作。 它可以转换整数和浮点数的字符串表示形式,以及非字符串值 true  falsenull。 支持十进制和十六进制 ( 0x 前缀 ) 格式的整数。

支持负数(虽然不支持十六进制)。

对BigInt值使用运算符会引发 TypeError。

如果它无法解析特定值,它将输出为NaN

参考:MDN