Enumerable.all - Prototype JavaScript 框架

Xunxin Prototype API

all

all([iterator = Prototype.K[, context]]) -> Boolean

Enumerable 中的元素全部等价于 true,则返回 true,否则返回 false。参数 iterator 是一个函数对象,该参数可选,若指定该参数, 则根据参数所定义的规则判断元素等价的 bool 值。

译注:Prototype.K 是 Prototype 预设的一个函数对象,该函数接受一个参数,并直接返回该参数值。

显然,在发现某一元素等价的 bool 值为 false 后,程序会自动终止循环。如果未指定 iterator 参数,则直接判定元素等价的 bool 值,否则,将元素传递给 iterator 指定的函数,并根据返回的值判断等价的 bool 值。

可选的 context 参数是 iterator 要绑定的对象,若设定该参数,iterator 中的 this 关键字将指向 context 对象。

样例

[].all() 
// -> true (空数组,没有任何一个元素等价于 false) 
$R(1, 5).all() 
// -> true (在 [1..5] 间的所有值都等价于 true)
[0, 1, 2].all() 
// -> false (循环仅执行一次:0 等价于 false) 
[9, 10, 15].all(function(n) { return n >= 10; }) 
// -> false (对于 9,iterator 返回 false) 
$H({ name: 'John', age: 29, oops: false }).all(function(pair) { return pair.value; }) 
// -> false (名值对 oops/false 的值为 false) 

参见

如果想要判断 Enumerable 中至少有一个元素符合指定的条件,请使用 any