删除underscore.js each()或其他中的当前对象

时间:2013-06-07 19:25:56

标签: javascript underscore.js

删除underscore.js中的当前对象each()或其他?

_.each(fools, function(user) {
    if (user['great'] === true) {  
        // delete user from fools object ?
    }
});

3 个答案:

答案 0 :(得分:5)

您可能想要使用filter http://underscorejs.org/#filter

fools = _.filter(fools, function(user) {
    return !user['great'];
});

reject,这只是糖。

答案 1 :(得分:3)

每个()

中的

_.each(fools, function(user, key) {
    if (user['great'] === true) {  
        delete fools[key];
    }
});

答案 2 :(得分:2)

您考虑过_.reject吗?

来自下划线文档:

  

返回list中的值,不包含真值测试(迭代器)传递的元素。与过滤器相反。

var odds = _.reject([1, 2, 3, 4, 5, 6], function(num){ return num % 2 == 0; });
=> [1, 3, 5]