从数组中的JSON对象中删除属性

时间:2018-10-06 04:24:57

标签: javascript arrays object

我有一个json对象数组。

var user =[ { id: 1, name: 'linto', img: 'car' },
  { id: 2, name: 'shinto', img: 'ball' },
  { id: 3, name: 'hany', img: 'kite' } ]

要从中删除数组所有元素中的属性img,因此输出看起来像这样。

var user =[ { id: 1, name: 'linto' },
  { id: 2, name: 'shinto' },
  { id: 3, name: 'hany' } ]

有没有办法在Java脚本中做到这一点。

2 个答案:

答案 0 :(得分:1)

您可以将.map()用于对象分解:

let data =[
  { id: 1, name: 'linto', img: 'car' },
  { id: 2, name: 'shinto', img: 'ball' },
  { id: 3, name: 'hany', img: 'kite' }
];
  
let result = data.map(({img, ...rest}) => rest);

console.log(result);

答案 1 :(得分:1)

Array.prototype.map()

  

map()方法创建一个新数组,其结果是在调用数组中的每个元素上调用提供的函数。

您可以通过以下方式使用map()

var user =[ { id: 1, name: 'linto', img: 'car' },
  { id: 2, name: 'shinto', img: 'ball' },
  { id: 3, name: 'hany', img: 'kite' } ]
  
user = user.map(u => ({id: u.id, name: u.name}));
console.log(user);