点记法是最直接的方法。只需在对象后面加上点(.),然后是属性名。例如:
let obj = {name: 'John', age: 30};
console.log(obj.name); // 输出 'John'
如果你试图访问的属性名包含空格或特殊字符(如点或美元符号),或者是一个变量,那么可以使用方括号记法。例如:
let obj = { 'name with spaces': 'John', 'name$': 'Doe' };
console.log(obj['name with spaces']); // 输出 'John'
console.log(obj['name$']); // 输出 'Doe'
这个方法返回一个包含对象所有键的数组。例如:
let obj = {name: 'John', age: 30};
console.log(Object.keys(obj)); // 输出 ['name', 'age']
这个方法返回一个包含对象所有值的数组。例如:
let obj = {name: 'John', age: 30};
console.log(Object.values(obj)); // 输出 ['John', 30]
这个方法返回一个包含对象所有键值对的数组。例如:
let obj = {name: 'John', age: 30};
console.log(Object.entries(obj)); // 输出 [['name', 'John'], ['age', 30]]
这个方法返回一个包含对象自身所有属性(包括不可枚举的属性)的数组。例如:
let obj = {name: 'John', age: 30, nonEnumerable: 'foo'};
console.log(Object.getOwnPropertyNames(obj)); // 输出 ['name', 'age', 'nonEnumerable']
这个方法返回一个描述对象的所有自有属性的对象。例如:
codelet obj = {name: 'John', age: 30, nonEnumerable: 'foo'};
console.log(Object.getOwnPropertyDescriptors(obj)); // 输出 {...} (包含name, age, nonEnumerable的描述符)
以上就是一些在JavaScript中获取对象属性的主要方式。根据你的需求和场景,选择合适的方法来访问和操作对象的属性。