次のようなコードを書きました。
var a = new Array(10); // should be [undefined * 10]
var b = _.every(a, function(m){
if(_.isUndefined(m)){
return false;
}
return true;
});
b が「false」であることを期待していますが、「true」を返します。なぜ「true」を返すのですか?
次に、これに変更します。
var c = [undefined, undefined];
var d = _.every(c, function(m){
if(_.isUndefined(m)){
return false;
}
return true;
});
d で「false」を返します。
なぜそれらは異なるのですか?
これはhttp://jsfiddle.net/3qj4B/3/でテストできます