创建一个下划线我自己的一些功能用于练习

Create a underscore some function of my own for practice

我正在尝试复制下划线的某些功能。我已经能够很容易地复制每一个,但我缺乏对如何正确隔离布尔值的理解。这是我目前的情况,感谢您的提前帮助。

var some = function(collection, iterator){
    for(var i = 0; i < collection.length; i++)
        if(iterator(collection[i])){
            return false;
        }
    return true;
};

不确定 'isolate' 布尔值 属性 是什么意思。

如果任何集合成员通过真值测试,下划线函数 some 应该 return 为真,并且在找到第一个真值后不应继续循环。

所以基本上,我认为你的 return 语句被颠倒了:

var some = function(collection, iterator){
    for(var i = 0; i < collection.length; i++)
        if(iterator(collection[i])){
            return true;
        }
    return false;
};

console.log(some([1,2,4], function(thing){ return thing >=2; }));

console.log(some([1,2,4], function(thing){ return thing === 5; }));