我有一組鍵,我想從物件陣列中洗掉節點。
我試過但沒有作業
if(attr_type === "Blush" || attr_type === "Tie Male"
|| attr_type === "Arm Female Brown"
|| attr_type === "Arm Female Grey"
|| attr_type === "Arm Male Brown"
|| attr_type === "Arm Male Grey"
|| attr_type === "Glasses Or Mask Female"
|| attr_type === "Glasses Or Mask Male"
|| attr_type === "Glasses Or Mask Male For Outfit"
|| attr_type === "Shoes Female"
|| attr_type === "Shoes Male"
|| attr_type === "Boy Shoes"
|| attr_type === "Girl Shoes"
|| attr_type === "Outfit Female Arm Grey"
|| attr_type === "Outfit Female Arm Brown"
|| attr_type === "Pants Female"
|| attr_type === "Pants Male"
) {
delete attributes[i];
}
這是腳本
[
'Blush',
'Tie Male',
'Arm Female Brown',
'Outfit Female Arm Grey'
]
這個陣列物件
[
{
"trait_type": "Background",
"value": "Yellow"
},
{
"trait_type": "Blush",
"value": "None"
},
{
"trait_type": "Body Male Grey",
"value": "Male Body Grey Color"
}
]
這是最終陣列
[
{
"trait_type": "Background",
"value": "Yellow"
},
{
"trait_type": "Body Male Grey",
"value": "Male Body Grey Color"
}
]
陣列可能有很多鍵,而陣列物件有很多節點。
請幫忙
謝謝
uj5u.com熱心網友回復:
我會走這條路-
const keyWords = [
'Blush',
'Tie Male',
'Arm Female Brown',
'Outfit Female Arm Grey'
]
const arr = [
{
"trait_type": "Background",
"value": "Yellow"
},
{
"trait_type": "Blush",
"value": "None"
},
{
"trait_type": "Body Male Grey",
"value": "Male Body Grey Color"
}
]
const keyWordsSet = new Set(keyWords);
console.log(arr.filter(obj => !keyWordsSet.has(obj.trait_type)))
uj5u.com熱心網友回復:
這個怎么樣?
const array1 = [
'Blush',
'Tie Male',
'Arm Female Brown',
'Outfit Female Arm Grey'
]
const array2 = [
{
"trait_type": "Background",
"value": "Yellow"
},
{
"trait_type": "Blush",
"value": "None"
},
{
"trait_type": "Body Male Grey",
"value": "Male Body Grey Color"
}
]
console.log(array2.filter(a2 => !array1.includes(a2.trait_type)))
uj5u.com熱心網友回復:
您可以通過使用Array.filter()和Array.includes()來實作它。
作業演示:
const blackList = [
'Blush',
'Tie Male',
'Arm Female Brown',
'Outfit Female Arm Grey'
];
const inputArr = [
{
"trait_type": "Background",
"value": "Yellow"
},
{
"trait_type": "Blush",
"value": "None"
},
{
"trait_type": "Body Male Grey",
"value": "Male Body Grey Color"
}
];
const res = inputArr.filter((obj) => !blackList.includes(obj.trait_type));
console.log(res);
uj5u.com熱心網友回復:
const reflist = [
'Blush',
'Tie Male',
'Arm Female Brown',
'Outfit Female Arm Grey'
]
const arr = [
{
"trait_type": "Background",
"value": "Yellow"
},
{
"trait_type": "Blush",
"value": "None"
},
{
"trait_type": "Body Male Grey",
"value": "Male Body Grey Color"
}
];
const output = arr.filter(item => reflist.indexOf(item.trait_type) === -1);
console.log(output)
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/453247.html
標籤:javascript 数组
上一篇:“this”沒有像我預期的那樣在Javascript中使用字串連接
下一篇:在畫布網格上添加點
