parseInt vs一元加-何时使用

这行之间有什么区别:

var a = parseInt("1", 10); // a === 1

这条线

var a = +"1"; // a === 1

jsperf测试表明,假设适用于node.js !,在当前的chrome版本中,一元运算符要快得多。

如果我尝试转换不是数字的字符串,都将返回NaN

var b = parseInt("test" 10); // b === NaN
var b = +"test"; // b === NaN

所以我什么时候应该更喜欢使用parseInt一元加号(尤其是在node.js中)???

编辑:和双波浪号运算符有~~什么区别

2020/04/03 12:16:12

也要考虑性能令我感到惊讶的是,parseInt在iOS上胜过一进制:)这仅对CPU消耗大的Web应用程序有用。作为一种经验法则,我建议JS opt-guy从当今的移动性能角度考虑将JS运算符放在另一个运算符上。

因此,请先移动版 ;)