如果不使用undercoreJS,我怎么能做到这一点

how can I do this without using underscoreJS?

本文关键字:怎么能 这一点 undercoreJS 如果不      更新时间:2023-09-26

我想知道如何在不使用undercoreJS的情况下使用JUST javascript来实现这一点?我一直在尝试不同的方法,但我无法实现!:(谢谢!

我想做的是基本上检查哪个是已检查的还是未检查的。

myArray =[
        {text: 'lean something', done: false},
        {text: 'what ever', done: false }
    ];
function clearCompleted = function(){
        myArray = _.filter(myArray, function(todo){
                    return !todo.done;
                });

如果您只支持现代浏览器(即任何比IE8更新的浏览器(,则可以使用.filter():

myArray.filter(function(todo){
    return !todo.done;
});

如果你想支持旧的浏览器,请使用一个循环:

var temp = [];
for (var i = 0; i < myArray.length; i++) {
    if (!myArray[i].done) {
        temp.push(myArray[i]);
    }
}

您可以使用Array.filter:

myArray = myArray.filter(function(todo) {
    return !todo.done;
});

如果你使用的是不包含该方法的旧浏览器,那么上面的链接中有一个填充程序。

您可以使用本机filter方法:

myArray = myArray.filter(function(todo){
    return !todo.done;
});