2013-05-17 198 views
2

在这些情况下,加号运算符的应用是什么?我已经看到它以这些方式使用,但没有看到它如何运作。Javascript +运营商

start = +new Date; 

+array[i] 

+f.call(array, array[i], i) 

x = +y 
+0

还有一个是:http:/ /stackoverflow.com/questions/8330499/operator-before-expression-in-javascript-what-does-it-do – bfavaretto

回答

10

+会隐字符串/布尔值成​​。

+"66" === 66 

如果字符串不能被转换成Number,该值将是NaN

+"not possible" // evaluates to NaN 

Date()对象的情况下,+还将的数据转化为其数字表示形式,即UNIX时间戳

所以,最后说,领导一个表达+几乎是它周围的一样明确地包裹​​构造:

+new Date() 

等于

Number(new Date()) 
+0

或任何原始值为一个数字为此事... – dandavis