什么是使用的目的! 在JavaScript中?
这个问题在这里已经有了答案:
这与角度无关
这只是将价值转化为布尔的一种方式。 (根据truthy / falsy值)
有很多关于它的文章。
例子 :
!!"a"
// true
!!"0"
// true
!!0
// false
要明确,这个问题与AngularJS无关 - 这是一个JS语法问题。
!!
的目的!!
在JavaScript(和其他语言)中强制为布尔值。
使用单个!
强制它是布尔值,但与值是“truthy”还是“falsy”相反。 第二!
将其翻转为与最初的“truthy”或“falsy”评估匹配的布尔值。
var a = 'a string';
var f = !a; // f is now boolean false because a was "truthy:
var t = !!a; // f is now boolean true because a was "truthy:
这不是具体到角,它提供像变换非布尔值undefined
为布尔值。