JavaScript 访问数组元素对象中指定名称属性的正确写法是什么
语法错误原因
你当前写的obj[i].["name of thing in object"]属于语法错误:JavaScript 中访问对象属性时,点操作符和方括号操作符不能同时用于同一个层级的属性访问,你多写了一个多余的.。
正确写法
分两种场景选择写法:
- 如果属性名是不含空格、特殊字符的合法标识符(比如你示例数据里的
name、id),两种写法都可以:- 点操作符写法:
obj[i].name、obj[i].id - 方括号写法:
obj[i]['name']、obj[i]['id']
- 点操作符写法:
- 如果属性名包含空格、特殊字符,或者属性名是动态变量,必须使用方括号写法,你示例中带空格的属性名直接删掉多余的点即可:
obj[i]["name of thing in object"]
完整运行示例
// 你的数组数据 const obj = [ { "name": "DISBOARD#2760", "id": "3020508723832240" }, { "name": "Gumernus#0122", "id": "7814540349956106" } ] // 遍历数组打印每个对象的name值 for(let i = 0; i < obj.length; i++){ console.log(obj[i].name) // 也可以写成 console.log(obj[i]['name']) }
内容的提问来源于stack exchange,提问作者Gumernus
相关产品推荐
相关产品推荐

