如何从javascript中的数组对象中删除特定的键和值?

新手上路,请多包涵

这里我在这个 arrayData 中有 arrayData 数组对象我有多个对象我想从这个数组对象中删除索引和类型键值如何从这个 arrayData 中删除?

 arrayData : [
  0: {
       index: 0
       is_required: true
       name: "vmvdnksl"
       type: "LONG_TEXT"
     }
  1: {
       index: 1
       is_required: true
       name: "dsvnlk"
       type: "MULTIPLE_SELECTORS"
     }
   ]

删除索引和类型后我想要这种类型的结果

 arrayData : [
  0: {
       is_required: true
       name: "vmvdnksl"
     }
  1: {
       is_required: true
       name: "dsvnlk"
     }
   ]

原文由 user10950990 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 796
2 个回答

您可以使用休息参数。当您有很多键想要保留并且只删除其中的几个时,这会派上用场。

 const arrayData= [{index: 0,is_required: true,name: "vmvdnksl",type: "LONG_TEXT"},{index: 1,is_required: true,name: "dsvnlk",type: "MULTIPLE_SELECTORS"}];

const result = arrayData.map(({type,index,...rest}) => ({...rest}));

console.log(result);

原文由 Code Maniac 发布,翻译遵循 CC BY-SA 4.0 许可协议

您可以使用 Array.map()destructuring 来完成这项任务:

 const arrayData = [
    {
       index: 0,
       is_required: true,
       name: "vmvdnksl",
       type: "LONG_TEXT"
     },
     {
       index: 1,
       is_required: true,
       name: "dsvnlk",
       type: "MULTIPLE_SELECTORS"
     }
];

let res = arrayData.map(({is_required, name}) => ({is_required, name}));
console.log(res);
 .as-console {background-color:black !important; color:lime;}
.as-console-wrapper {max-height:100% !important; top:0;}

我宁愿永远不要改变原始数据,但如果你需要这个,你可以这样做(或使用 delete 正如其他人所示):

 const arrayData = [
    {
       index: 0,
       is_required: true,
       name: "vmvdnksl",
       type: "LONG_TEXT"
     },
     {
       index: 1,
       is_required: true,
       name: "dsvnlk",
       type: "MULTIPLE_SELECTORS"
     }
];

let res = arrayData.forEach(
    ({is_required, name}, idx, arr) => arr[idx] = ({is_required, name})
);
console.log(arrayData);
 .as-console {background-color:black !important; color:lime;}
.as-console-wrapper {max-height:100% !important; top:0;}

原文由 Shidersz 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题