我正在撰寫一個NODE.JS代碼,向用戶展示他在游戲中的賬戶的一些資料。
它向游戲 API 發送了一個 GET 請求,API 回傳一個陣列,其中包含玩家在游戲中與每個 "冠軍 "的 "積分 "數量。問題是,它沒有回傳 "冠軍 "的名字,只有他們的ID:
。
[
{
championId: 19,
championLevel: 7,
championPoints: 116531,
},
{
championId: 24,
championLevel: 6,
championPoints: 67710,
},
{
championId: 131,
championLevel: 6,
championPoints: 67233,
}
我有一個包含所有ID及其相關冠軍名稱的串列,如下所示。我想知道是否有辦法將所有的冠軍ID替換成他們相應的冠軍名稱,這樣我就可以用冠軍名稱而不是ID來列印陣列,以使其更容易理解資訊。我在這里只包括了3個冠軍,以使它更簡單,但真正的陣列有150個冠軍,所以我需要一種方法來 "大量編輯 "它。
span class="hljs-attr">championId: 19等同于冠軍名稱Warwick。
championId: 24等同于冠軍名稱Jax。
championId: 131等同于冠軍名稱Diana。
我想列印的內容是:
[
{
championName: Warwick。
championLevel: 7,
championPoints: 116531,
},
{
championName: Jax,
championLevel: 6,
championPoints: 67710,
},
{
championName: Diana,
championLevel: 6,
championPoints: 67233,
}
uj5u.com熱心網友回復:
兩個有用的陣列函式是map和find;map用來轉換分數陣列,find用來做轉換的重要部分,即在名字陣列中查找名字....
let scores = [{
championId: 19,
championLevel: 7,
championPoints: 116531,
},
{
championId: 24,
championLevel: 6,
championPoints: 67710,
},
{
championId: 131,
championLevel: 6,
championPoints: 67233,
}
];
let names = [{
championId: 19,
name: 'Warwick'。
},
{
championId: 24,
name: 'Jax'。
},
{
championId: 131,
name: 'Diana'。
}
];
let scoresWithNames = scores.map(s => {
///在名稱陣列中找到匹配的冠軍ID。
let name = names.find(n => n. championId === s.championId).name。
return { ...s, name };
});
console.log(scoresWithNames);
<iframe name="sif1" sandbox="allow-forms allow-modals allow-scripts" class="snippet-box-edit snippet-box-result" frameborder="0"></iframe>
uj5u.com熱心網友回復:
你要使用的是Array.prototype.map MDN。它使用一個回呼函式轉換陣列中的所有元素,并回傳轉換后的陣列:
const champions = [
{
championId: 19,
championLevel: 7,
championPoints: 116531,
},
{
championId: 24,
championLevel: 6,
championPoints: 67710,
},
{
championId: 131,
championLevel: 6,
championPoints: 67233,
}
];
function getName(championId){
//你的邏輯來獲得冠軍的名字。
}
const newChampions = champions.map((c) => ({
championName: getName(c.championId) 。
championLevel: c.championLevel,
championPoints: c.championPoints。
}));
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/312763.html
標籤:
上一篇:回圈獲取回應中的物件
