繁体   English   中英

如何通过javascript中的键从数组中删除元素?

[英]How to remove element from array by key in javascript?

我有这个数组:

var myArray = [
                  {first_name: "Oded", last_name: "Taizi", id: 1},
                  {first_name: "Ploni", last_name: "Almoni", id: 2}
                  ];

我想删除 id 元素? 我创建了这样的函数,但它不能正常工作。

function removeKeys(array,keys){
 for(var i=0; i<array.length; i++){
    for(var key in array[i]){
        for(var j=0; j<keys.length; j++){
            if(keys[j] == key){
                array[i].splice(j, 1);
            }
        }
    }
 }
}

removeKeys(myArray ,["id"]);

结果数组应如下所示:

[
    {first_name: "Oded", last_name: "Taizi"},
    {first_name: "Ploni", last_name: "Almoni"}
];

用这个:

myArray.forEach(function(item){ delete item.id });

也许在数组上有一个过滤器:

filteredArray = myArray.filter(item => return (item.id !== id));

这将返回一个没有匹配元素的新数组。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM