javascript - 用javascript解析嵌套的json
问题描述
我有一些 JSON。
{
ZVH2: {
username: 'ZVH2',
ping: 0,
uuid: '3a4423c3-dce1-40c1-8333-ab2ffdfcd005',
displayName: ChatMessage {
json: [Object],
text: '',
extra: [Array],
bold: undefined,
italic: undefined,
underlined: undefined,
strikethrough: undefined,
obfuscated: undefined,
color: undefined
},
entity: Entity {
_events: [Object: null prototype] {},
_eventsCount: 0,
_maxListeners: undefined,
id: 367,
type: 'player',
position: [Vec3],
velocity: [Vec3],
yaw: 3.141592653589793,
pitch: 0,
onGround: false,
height: 1.62,
width: 0,
effects: [Object],
equipment: [Array],
heldItem: [Item],
isValid: true,
metadata: [Array],
username: 'ZVH2',
name: 'player',
timeSinceOnGround: 0,
attributes: [Object],
isInWater: false,
isInLava: false,
isInWeb: undefined,
isCollidedHorizontally: false,
isCollidedVertically: false,
[Symbol(kCapture)]: false
},
gamemode: 2
},
Maximo237354: {
username: 'Maximo237354',
ping: 161,
uuid: 'd6d1bcda-d3c0-406b-b91e-beb3f7be9f5f',
displayName: ChatMessage {
json: [Object],
text: '',
extra: [Array],
bold: undefined,
italic: undefined,
underlined: undefined,
strikethrough: undefined,
obfuscated: undefined,
color: undefined
},
entity: Entity {
_events: [Object: null prototype] {},
_eventsCount: 0,
_maxListeners: undefined,
id: 72,
type: 'player',
position: [Vec3],
velocity: [Vec3],
yaw: 2.773437264497239,
pitch: -0.04908738521234035,
onGround: true,
height: 1.62,
width: 0.6,
effects: [Object],
equipment: [Array],
heldItem: [Item],
isValid: true,
metadata: [Array],
name: 'player',
username: 'Maximo237354',
uuid: 'd6d1bcda-d3c0-406b-b91e-beb3f7be9f5f',
dataBlobs: undefined,
attributes: [Object],
headYaw: 2.773437264497239,
[Symbol(kCapture)]: false
}
}
}
我想在这里使用javascript打印用户名的用户名。它可以遍历每件事并打印用户名值,也可以只取第一个值,因为那也是用户名。我在任何地方都找不到很好的在线教程。我想确保打印每个用户名而不是实体。有人可以帮忙吗?
解决方案
假设您的 JSON 变量被调用data
,您可以使用Object.keys(data)
迭代并获取您可以执行的用户名
Object.keys(data).forEach(key => {
let username = data[key].username;
});
推荐阅读
- apache - 使用 mod_auth_openidc 和 keycloak 进行 cURL 身份验证
- regex - 使用正则表达式识别 EQUIPMENTID 编号 - VBA
- jquery - 如何使用 jQuery 仅按特定列过滤引导表
- ado.net - 连接和 DataAdaptor 对象范围的 ADO.NET 最佳实践 - 后续
- javascript - 如何防止用户在填写之前的回复之前选择下一个可折叠项目?
- php - PDOStatement::execute(): SQLSTATE[HY093]: 参数号无效:参数没有...定义?
- javascript - 我使用“withObservables()”方法成功显示了我的数据,但它仍然对我在 WatermelonDB 中的组件没有反应
- java - 如何在 ArrayList 中合并两个相似的项目?
- arrays - 将二维数组传递给函数
- javascript - 当浏览器进行屏幕缩放时,ScreenX 和 ScreenY 不会将元素与光标对齐