【问题标题】:how to delete array inside array by value in javascript [duplicate]如何在javascript中按值删除数组内的数组[重复]
【发布时间】:2021-05-30 19:25:05
【问题描述】:

假设,我有数组let arr = [0,1,[2],3,4]

我想仅通过值 [2] 从 arr 数组中删除 [2]。

预期的数组是arr = [0,1,3,4]

感谢您的帮助, 谢谢。

【问题讨论】:

  • 你可以这样做arr.filter(x=>typeof(x)!="object")
  • @SourabhSomani 我猜 OP 不想简单地删除所有对象

标签: javascript arrays


【解决方案1】:

这应该有帮助!

let arr = [0, 1, [2], 3, 4, 'A', [2], { name: 'John' }];

const match = (a1, a2) => {
  if (a1.length !== a2.length) return false;
  for (let i = 0; i < a1.length; i++) {
    if (a1[i] !== a2[i]) return false;
  }
  return true;
};

const target = [2];
arr = arr.filter((el) => !match(el, target));

console.log(arr);

【讨论】:

    猜你喜欢
    • 2011-10-31
    • 2017-10-16
    • 2019-08-29
    • 1970-01-01
    • 2020-11-01
    • 2016-09-15
    • 2010-12-25
    相关资源
    最近更新 更多