你能解释为什么这句话会返回 false ?
_。every([true,1,null,'yes'],_。identity); //假
如果没有 null ,则返回 true 。所以这个 null 就是问题所在。但_.identity(null) === null
true 。
该示例来自官方文档(http://underscorejs.org/#every)。
答案 0 :(得分:5)
当且仅当迭代器函数为数组中的每个项返回一个truthy值时,_.every
方法才会返回true。 _.identity
只是一个直通,因此_.identity(null)
将返回null
,这不是真正的。迭代停止,_.every
返回false
。