使用JavaScript从数组中删除项目

时间:2015-01-14 08:20:02

标签: javascript arrays

我有一个包含两个对象的数组(可以更多)。如下所示

var array = [{ 'a':'hello', 'b': 'world' }, { 'a':'new', 'b': 'world' }];

我有一个带有额外值的对象要从该数组中删除。实施例

var objectInarray = { 'a':'hello', 'b': 'world', 'c': 'extra' }

我如何删除?

编辑:

我想使用{ 'a':'hello', 'b': 'world' }删除数组的objectInarray值。最终结果将如下所示

 var array = [{ 'a':'new', 'b': 'world' }];

当我们删除了不需要的数组值时。

1 个答案:

答案 0 :(得分:2)

我不确定我是否正确理解您的要求。如果需要进行任何更改,请在评论中告知我们。

var array = [{ 'a':'hello', 'b': 'world' }, { 'a':'new', 'b': 'world' }];
var objectInarray = { 'a':'hello', 'b': 'world', 'c': 'extra' };

var opArray = [];
for(var i=0; i<array.length; i++){
    var element = array[i];
    var isAllPresent = true;
    for(key in element){
        if(!(objectInarray[key] && objectInarray[key] === element[key] )){
            isAllPresent = false;
            break;
        }
    }
    if(!isAllPresent){
        opArray.push(element);
    }
}

console.log(opArray);

opArray会有剩余的项目。