这行之间有什么区别:
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中)???
编辑:和双波浪号运算符有~~
什么区别?
也要考虑性能。令我感到惊讶的是,
parseInt
在iOS上胜过一进制:)这仅对CPU消耗大的Web应用程序有用。作为一种经验法则,我建议JS opt-guy从当今的移动性能角度考虑将JS运算符放在另一个运算符上。因此,请先移动版 ;)