資料:
[
{
"name": "Ankh of Anubis",
"rank": {
"_type": "medal",
"current": "ankh-of-anubis"
}
},
{
"name": "Bonus Roulette",
"rank": {
"_type": "medal",
"current": "bonus-roulette"
}
},
{
"name": "jetx",
"rank": {
"_type": "medal",
"current": "jetx"
}
},
{
"name": "Gates of Olympus",
"rank": {
"_type": "trophy",
"current": "gates-of-olympus"
}
},
]
如何僅過濾唯一值,
uniqueValues = ["medal","trophy"]
我試過了,
const uniqueTitles = new Set(games.category.title);const uniqueTitles = [...new Set(games.category.title)]//打字稿錯誤。
useEffect(() => {
const uniqueTitles = games.filter((game:any) => {
return new Set(game.category.title);
})
setTitles(uniqueTitles);
},[])
uj5u.com熱心網友回復:
您正在Set用作過濾器函式的回傳值。真的是這樣打算的嗎?給定資料:
const data = [
{
"name": "Ankh of Anubis",
"rank": {
"_type": "medal",
"current": "ankh-of-anubis"
}
},
{
"name": "Bonus Roulette",
"rank": {
"_type": "medal",
"current": "bonus-roulette"
}
},
{
"name": "jetx",
"rank": {
"_type": "medal",
"current": "jetx"
}
},
{
"name": "Gates of Olympus",
"rank": {
"_type": "trophy",
"current": "gates-of-olympus"
}
},
]
你可以這樣做:
const uniqueValues = new Set();
data.forEach(record => uniqueValues.add(record.rank._type));
console.log(uniqueValues);
這是鏈接。
uj5u.com熱心網友回復:
假設您的陣列被稱為data:
const unique = [...new Set(data.map(item => item.rank._type))];
學分:https ://stackoverflow.com/a/58429784/6320971
uj5u.com熱心網友回復:
類似于您的第一次嘗試的解決方案:
const data = [{"name":"Ankh of Anubis","rank":{"_type":"medal","current":"ankh-of-anubis"}},{"name":"Bonus Roulette","rank":{"_type":"medal","current":"bonus-roulette"}},{"name":"jetx","rank":{"_type":"medal","current":"jetx"}},{"name":"Gates of Olympus","rank":{"_type":"trophy","current":"gates-of-olympus"}},];
const uniqueValues = new Set(data.map(elem => elem.rank._type));
uniqueValues.forEach(value => console.log(value));
uj5u.com熱心網友回復:
const data = [
{
"name": "Ankh of Anubis",
"rank": {
"_type": "medal",
"current": "ankh-of-anubis"
}
},
{
"name": "Bonus Roulette",
"rank": {
"_type": "medal",
"current": "bonus-roulette"
}
},
{
"name": "jetx",
"rank": {
"_type": "medal",
"current": "jetx"
}
},
{
"name": "Gates of Olympus",
"rank": {
"_type": "trophy",
"current": "gates-of-olympus"
}
},
]
const result = data.filter((item, index) => {
const itemIndex = data.findIndex(i => i.rank._type === item.rank._type)
return itemIndex === index
})
console.log(result)
uj5u.com熱心網友回復:
簡單的方法:
Array.from(new Set(dataList.map(i => i.name)))
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/494592.html
標籤:javascript 反应 数组
上一篇:如何使用功能樣式進行z順序插入
