JavaScript中如何从对象数组提取指定属性生成新对象
如何从对象中移除指定属性生成新对象?
原始对象:
{ user_id: '2', imagefilename: '/data/data', coordinates: [ { classes_id: 2, coordinate: [Array] } ] }
目标对象:
{ user_id: '2', imagefilename: '/data/data' }
下面几种方法都能实现需求:
方法1:解构赋值(推荐,不修改原对象)
通过解构提取需要的属性,忽略剩余属性,直接生成新对象:
const originalObj = { user_id: '2', imagefilename: '/data/data', coordinates: [ { classes_id: 2, coordinate: [Array] } ] }; const { coordinates, ...newObj } = originalObj; console.log(newObj); // 输出:{ user_id: '2', imagefilename: '/data/data' }
方法2:手动创建新对象
直接复制需要的属性到新对象,适合属性数量较少的场景:
const originalObj = { user_id: '2', imagefilename: '/data/data', coordinates: [ { classes_id: 2, coordinate: [Array] } ] }; const newObj = { user_id: originalObj.user_id, imagefilename: originalObj.imagefilename }; console.log(newObj);
方法3:使用delete操作符(会修改原对象)
如果不需要保留原对象,可以直接删除多余属性:
const originalObj = { user_id: '2', imagefilename: '/data/data', coordinates: [ { classes_id: 2, coordinate: [Array] } ] }; delete originalObj.coordinates; console.log(originalObj); // 此时原对象已变为目标结构
内容的提问来源于stack exchange,提问作者Atakan Ertürk
相关产品推荐
相关产品推荐

