这是有效的代码吗?

时间:2014-11-17 22:39:19

标签: javascript

我正在查看一些javascript代码,我看到以下内容:

if(!+val)
     return val;

我之前从未见过!+,在使用Google搜索时没有找到它。如果它有效,具体用于什么?

3 个答案:

答案 0 :(得分:3)

是。 unary + operator强制值为Number! operator执行逻辑否定。

也就是说,它相当于

if(!Number(val))

例如,

!+"0"  // true, because +"0" === 0, and !0 === true
!+[1]  // false, because +[1] === 1 and !1 === false

答案 1 :(得分:2)

!logical NOT operator

+unary plus operator.

+valval转换为数字。然后!+val将它否定为布尔值。

答案 2 :(得分:0)

+将字符串转换为int,并将日期转换为纪元时间戳。其他一切都是自我解释的。

更正:将其转换为数字而不是int