首页 > 解决方案 > 从 JSON 响应中删除属性

问题描述

我有这个 JSON(作为字符串):

[{"product":{"id":"25","age":"35","name":"hp keyboard"},"quantity":1},
 {"product":{"id":"9","age":"25","name":"lenovo hero"},"quantity":2}]

如何从对象数组中删除或删除所有id&age属性(及其值),以便从中获取新数组?

标签: javascript

解决方案


Array.prototype.forEach只需使用和delete不需要的属性遍历数组:

const arr = [{
    "product": {
      "id": "25",
      "age": "35",
      "name": "hp keyboard"
    },
    "quantity": 1
  },
  {
    "product": {
      "id": "9",
      "age": 25,
      "name": "lenovo hero "
    },
    "quantity ": 2
  }
]

const newArr = JSON.parse(JSON.stringify(arr)); // deep clone arr
newArr.forEach(function(arrEl) {
  delete arrEl.product.id;
  delete arrEl.product.age
});

console.log(arr); // old array unchanged
console.log(newArr); // new Array with deleted properties


推荐阅读