我需要找到杀戮和死亡的方法(等等) 如果该名称不在对象中,我也需要它来输出一些东西。
像这样的东西:
if (medic does not have(name)) return;
const kills = medic.(name).kills
示例JSON:
{
"assault": {
"general": {
"kills": 1134,
"deaths": 1122,
"abc": "123"
},
"list": {
"A": {
"name": "name1",
"kills": 12,
"deaths": 120
},
"B": {
"name": "name2",
"kills": 23,
"deaths": 53
}
}
},
"support": {
"general": {
"kills": 123,
"deaths": 11232,
"abc": "11233"
},
"list": {
"A": {
"name": "name4",
"kills": 12,
"deaths": 120
},
"B": {
"name": "name5",
"kills": 23,
"deaths": 53
}
}
}
}
首先清理您的数据以获得一个漂亮的名称和信息列表:
const listOfNames = [...Object.values(data.assault.list), ...Object.values(data.support.list)]
然后使用该列表上的查找
方法搜索名称,如果搜索返回未定义
,则使用“未找到”
备份:
const search = (name) => listOfNames.find(item => item.name===name) || "Not Found"
那么您可以在其他地方使用该搜索功能:
在此查看其实际操作:https://repl./@lukestorry/62916291
你需要攻击和支持吗?还是你只需要其中一个? 您的数据总是在同一个形状上吗? 我将假设它是,我将提供两者,总和和单独的一个:
const data = // your JSON here
const getAssaultKills = name => (data.assault.list[name] || {kills: 0}).kills
const getSupportKills = name => (data.support.list[name] || {kills: 0}).kills
const getTotalKills = name =>
getSupportKills(name) + getAssaultKills(name)
getTotalKills("A") // => 24
getTotalKills("C") // => 0