我有一個物件:
const items = {
a: [3,5],
b: [6,7,8],
c: [0,10,1111]
}
和陣列:
const existing = [3,8]
我想創建一個新物件,但沒有包含在現有陣列中的值。我的意思是這個:
const newItems = {
a: [5],
b: [6,7],
c: [0,10,1111]
}
請教一下小貼士!
uj5u.com熱心網友回復:
const items = {
a: [3,5],
b: [6,7,8],
c: [0,10,1111]
}
const existing = [3,8]
const result = Object.keys(items).reduce((acc, key ) => {
acc[key] = items[key].filter((item)=> !existing.includes(item))
return acc;
}, {})
console.log(result);
uj5u.com熱心網友回復:
您可以使用Object.entries,并Object.fromEntries沿著filter以獲得所需的結果。
const items = {
a: [3, 5],
b: [6, 7, 8],
c: [0, 10, 1111],
}
const existing = [3, 8]
const newEntries = Object.entries(items).map(([key, value]) => [
key,
value.filter((x) => !existing.includes(x))
])
const newObject = Object.fromEntries(newEntries)
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/387129.html
標籤:javascript 数组 目的
上一篇:將2Dnumpy陣列重塑為3個具有x,y索引的1D陣列
下一篇:如何在類陣列中檢查用戶輸入的字串
