javascript - 如何从数组中的所有对象中删除一个简单的特定键值对

标签 javascript arrays object ecmascript-6

<分区>

我正在学习 ES6 和对象,想知道如何去掉这个对象数组中的一对键值对:

[
    { "name" : "mark", "height" : "tall", "theId" : "1", "nat" : "uk"},
    { "name" : "ben", "height" : "medium", "theId" : "2", "nat" : "uk"},
    { "name" : "neil", "height" : "small", "theId" : "3", "nat" : "uk" }
]

结果应该是:

[
    { "name" : "mark", "height" : "tall", "nat" : "uk"},
    { "name" : "ben", "height" : "medium", "nat" : "uk"},
    { "name" : "neil", "height" : "small", "nat" : "uk" }
]

我创建了一个 forEach 函数并尝试将每个结果推送到一个新数组中,但现在没有任何对象。

如何解决这个问题?或者有没有更好的方法使用 ES6/ES7 语法来做到这一点?谢谢你的帮助。代码和codePen URL如下:

代码笔:https://codepen.io/anon/pen/bPYQyb

let objArr = [
	{ "name" : "mark", "height" : "tall", "theId" : "1", "nat" : "uk"},
	{ "name" : "ben", "height" : "medium", "theId" : "2", "nat" : "uk"},
	{ "name" : "neil", "height" : "small", "theId" : "3", "nat" : "uk" }
],
    arr = [];

objArr.forEach(function(obj) {
	for (let column in obj) {
      let currArr = [];
    if (isNaN(obj[column])) {
      console.log('true');
      currArr.push(obj[column]);
    }
    arr.push(currArr);
  }
});

console.log(arr);

最佳答案

objArr.forEach(a => delete a.theId);

删除运算符的文档:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/delete

关于javascript - 如何从数组中的所有对象中删除一个简单的特定键值对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56798687/

相关文章:

java - 打印出数组的平均值

javascript - 在设置状态 React JS 之前检查对象数组是否存在于对象数组中的简单方法

java - 为什么继续对不可变对象(immutable对象)使用 getter?

javascript - 旋转后获取元素的默认左侧和顶部位置

javascript - 如何在页面上克隆或添加多个 ck 编辑器

javascript - 使用 selenium 检查 javascript 异常?

Java链表-如何复制数据?

javascript - Firebase 云函数 - 函数返回未定义、预期的 Promise 或值

java - 我可以操作数组来打印索引起始点吗?

python - 使用 Object Tkinter move 线