如何从 Javascript 对象中提取特定数据?
How to pull specific data from a Javascript object?
我正在尝试利用 Fortnite-api 与 Node.js 创建 Discord 机器人。当我使用 Fortnite-api 中包含的方法检索用户数据时,我收到一个大对象,我在下面包含了该对象。我可以使用 JSON.Stringify() 将其转换为字符串,但这并不能真正帮助我访问此数据的特定部分。我希望能够检索 "solo" 组或 "duo" 组等下的所有信息,并能够在这些组下单独使用密钥。
例如:soloWins = stats.group.solo.wins(或类似的东西)会 return "1"
感谢任何帮助!
{ group:
{ solo:
{ wins: 1,
top3: 0,
top5: 0,
top6: 0,
top10: 11,
top12: 0,
top25: 29,
'k/d': '0.95',
'win%': '0.01',
matches: 122,
kills: 115,
timePlayed: '14h 47m',
killsPerMatch: '0.94',
killsPerMin: '0.13' },
duo:
{ wins: 0,
top3: 0,
top5: 9,
top6: 0,
top10: 0,
top12: 18,
top25: 0,
'k/d': '1.25',
'win%': '0.00',
matches: 60,
kills: 75,
timePlayed: '7h 11m',
killsPerMatch: '1.25',
killsPerMin: '0.17' },
squad:
{ wins: 1,
top3: 12,
top5: 0,
top6: 16,
top10: 0,
top12: 0,
top25: 0,
'k/d': '1.43',
'win%': '0.02',
matches: 59,
kills: 83,
timePlayed: '9h 19m',
killsPerMatch: '1.41',
killsPerMin: '0.15' } },
info:
{ accountId: '6372c32ec81d4a0a9f6e79f0d5edc31a',
username: 'Mirardes',
platform: 'pc' },
lifetimeStats:
{ wins: 2,
top3s: 12,
top5s: 9,
top6s: 16,
top10s: 11,
top12s: 18,
top25s: 29,
'k/d': '1.14',
'win%': '0.01',
matches: 241,
kills: 273,
killsPerMin: '0.15',
timePlayed: '1d 7h 17m' }
}
}
我假设您从服务器获得的是一个 json 字符串,而不是一个对象。可能有一些其他方法可以更直接地解析它,但您可以只获取从服务器接收的字符串并将其转换为对象。在那种情况下,你必须将它解析成这样的对象:
let soloWins = JSON.parse(requestResponse).group.solo.wins
我正在尝试利用 Fortnite-api 与 Node.js 创建 Discord 机器人。当我使用 Fortnite-api 中包含的方法检索用户数据时,我收到一个大对象,我在下面包含了该对象。我可以使用 JSON.Stringify() 将其转换为字符串,但这并不能真正帮助我访问此数据的特定部分。我希望能够检索 "solo" 组或 "duo" 组等下的所有信息,并能够在这些组下单独使用密钥。
例如:soloWins = stats.group.solo.wins(或类似的东西)会 return "1"
感谢任何帮助!
{ group:
{ solo:
{ wins: 1,
top3: 0,
top5: 0,
top6: 0,
top10: 11,
top12: 0,
top25: 29,
'k/d': '0.95',
'win%': '0.01',
matches: 122,
kills: 115,
timePlayed: '14h 47m',
killsPerMatch: '0.94',
killsPerMin: '0.13' },
duo:
{ wins: 0,
top3: 0,
top5: 9,
top6: 0,
top10: 0,
top12: 18,
top25: 0,
'k/d': '1.25',
'win%': '0.00',
matches: 60,
kills: 75,
timePlayed: '7h 11m',
killsPerMatch: '1.25',
killsPerMin: '0.17' },
squad:
{ wins: 1,
top3: 12,
top5: 0,
top6: 16,
top10: 0,
top12: 0,
top25: 0,
'k/d': '1.43',
'win%': '0.02',
matches: 59,
kills: 83,
timePlayed: '9h 19m',
killsPerMatch: '1.41',
killsPerMin: '0.15' } },
info:
{ accountId: '6372c32ec81d4a0a9f6e79f0d5edc31a',
username: 'Mirardes',
platform: 'pc' },
lifetimeStats:
{ wins: 2,
top3s: 12,
top5s: 9,
top6s: 16,
top10s: 11,
top12s: 18,
top25s: 29,
'k/d': '1.14',
'win%': '0.01',
matches: 241,
kills: 273,
killsPerMin: '0.15',
timePlayed: '1d 7h 17m' }
}
}
我假设您从服务器获得的是一个 json 字符串,而不是一个对象。可能有一些其他方法可以更直接地解析它,但您可以只获取从服务器接收的字符串并将其转换为对象。在那种情况下,你必须将它解析成这样的对象:
let soloWins = JSON.parse(requestResponse).group.solo.wins