如何从数组中删除所有元素,但按值保留特定元素

时间:2019-06-09 15:59:07

标签: javascript arrays

大家好!我遇到了一些问题。我想从数组中删除所有数据,但不想从值中删除那1个数据。

示例:

key = '2' 
array = [ 
         'data1': 'foo',
         'data' : 
                 {
                  'id' : '1', 
                  'id' : '2', 
                  'id' : '3'
                 }
         ]

result = [
          'data1': 'foo',
          'data' : 
                  {
                   'id' : '2'
                  }
         ]

就这么谢谢

2 个答案:

答案 0 :(得分:2)

您可以使用filter()并将该值与key进行比较。

const key = 'foo';  
const array = ['foo', 'box', 'tree', 'bar'];
const result = array.filter(x => x === key);
console.log(result)

答案 1 :(得分:0)

最简单的方法是重新分配数组或使用结果创建新数组

const key = 'foo';
let array = ['foo', 'box', 'tree', 'bar'];
/*array = new Array(key); //be carefull if yoy are using this and the key is singular numeric value*/
array = [key];
console.log(array);