JavaScript中如何从含空格字符串键的对象数组取值?
解决带空格属性名的访问报错问题
你的代码报错是因为语法错误——访问对象属性时,.后面不能直接跟[。针对带空格的属性名(比如"user No"),有两种正确的访问方式:
方式一:直接使用方括号访问
去掉多余的.,直接用方括号包裹属性名:
const array = [{"user No": 1, password :1},{"user No": 2, password :2}] const user = array[0]["user No"] // 正确,返回1
方式二:解构赋值(更简洁的写法)
如果需要同时获取多个属性,解构赋值会更方便:
const array = [{"user No": 1, password :1},{"user No": 2, password :2}] const { "user No": user } = array[0] // 正确,user的值为1
补充说明
- 当对象属性名包含空格、特殊字符,或者是动态变量时,必须使用方括号语法访问;
- 只有属性名是合法标识符(无空格、不以数字开头等)时,才能用
.语法访问。
内容的提问来源于stack exchange,提问作者gaurav joshi
相关产品推荐
相关产品推荐

