[英]Delete multiple keys from array of Object
假設我們有一個 object 數組:
var obj = [{a: 1, b: 2, c: 3, d: 4, e: 5 },{a: 6, b: 7, c:
8, d: 9, e: 0 }];
我們想從兩個對象中刪除鍵 c,e 。
怎么做到呢? 我發現的一種方法是:
['c', 'e'].forEach(e => delete obj[e]); //for object
有沒有其他方法,所以我們不必使用雙循環。
您有 2 個選項來解決它:
map(({ a,b,c,d,e }) => ({a,b,d})
{ c, e, ...rest }
增強選項 1 Object destructuring
如下
const obj = { a: 1, b: 2, c: 3, d: 4, e: 5 } var {c, e} = obj; // c = 3, e = 5
使用選項 2,您將擁有c,e
隱式名稱和名為rest
the remaining items
。 之后,您只需要獲得rest
項目。
選項1
var obj = [ { a: 1, b: 2, c: 3, d: 4, e: 5 }, { a: 6, b: 7, c: 8, d: 9, e: 0 }, ]; console.log(obj.map(({ a,b,c,d,e }) => ({a,b,d})));
選項 2
var obj = [ { a: 1, b: 2, c: 3, d: 4, e: 5 }, { a: 6, b: 7, c: 8, d: 9, e: 0 }, ]; console.log(obj.map(({ c, e, ...rest }) => rest)); //...rest: the same as `a,b,d`
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.