JavaScript对象是存储键值对的容器,常用字面量写法创建;访问属性可用点号(.)或方括号([]),前者限合法标识符,后者支持动态和特殊字符属性名;访问不存在属性返回undefined,null/undefined对象上访问会报TypeError,推荐用可选链(?.)保障安全。
JavaScript 对象是存储键值对(key-value)的容器,用来表示现实中的事物或数据结构,比如一个人、一个订单、一组配置项等。每个“键”(也叫属性名)对应一个“值”,值可以是字符串、数字、函数、数组,甚至另一个对象。
最常用的是字面量写法,用花括号 {} 包裹:
const person = { name: "小明", age: 25, isStudent: true };
这里 name、age、isStudent 就是属性名,后面的值就是对应的属性值。
访问对象里的值,主要有两种语法:点号(.)和方括号([])
[]):更灵活,支持动态属性名、含空格或特殊字符的属性名。访问不存在的属性不会报错,而是返回 undefined:
person.height // undefined
如果对象本身是 null 或 undefined,再用点号或方括号访问会报错(TypeError),所以实际开发中常配合可选链操作符(?.)使用:
person?.address?.city // 安全访问嵌套属性,避免崩溃
对象里存函数,就叫“方法”。调用方式一样:
const car = { brand: "Toyota", start: function() { console.log("引擎启动"); } };
car.start(); // "引擎启动"
car["start"](); // 效果相同
基本上就这些。掌握点号和方括号的区别,再留意一下 undefined 和报错边界,对象属性访问就不复杂但容易忽略细节。