为什么这个_.every(...)返回false?

时间:2013-09-06 04:22:48

标签: underscore.js

你能解释为什么这句话会返回 false

  

_。every([true,1,null,'yes'],_。identity); //假

如果没有 null ,则返回 true 。所以这个 null 就是问题所在。但_.identity(null) === null true

该示例来自官方文档(http://underscorejs.org/#every)。

1 个答案:

答案 0 :(得分:5)

当且仅当迭代器函数为数组中的每个项返回一个truthy值时,_.every方法才会返回true。 _.identity只是一个直通,因此_.identity(null)将返回null,这不是真正的。迭代停止,_.every返回false