在JavaScript中,获取和设置对象属性的方法主要依赖于点符号(`.`)和方括号符号(`[]`)。这里简单介绍这两种方式:
### 获取属性
1. **点符号(`.`)**:适用于属性名符合标识符命名规则(不以数字开头,不包含空格等特殊字符)的情况。
let obj = {
name: "Alice",
age: 30
};
console.log(obj.name); // 输出: Alice
2. **方括号符号(`[]`)**:适用于属性名包含特殊字符、以数字开头、是变量或表达式的情况。
let obj = {
"first-name": "Bob",
"0": "zero"
};
console.log(obj["first-name"]); // 输出: Bob
console.log(obj[0]); // 输出: zero
// 使用变量作为属性名
let propName = "age";
console.log(obj[propName]); // 假设obj有age属性,则输出该属性的值
### 设置属性
1. **点符号(`.`)**:
obj.newProperty = "newValue";
console.log(obj.newProperty); // 输出: newValue
2. **方括号符号(`[]`)**:
obj["another-property"] = "anotherValue";
console.log(obj["another-property"]); // 输出: anotherValue
// 使用变量作为属性名
let newPropName = "property3";
obj[newPropName] = 3;
console.log(obj[newPropName]); // 输出: 3
这两种方式都可以用来获取和设置对象的属性,选择哪种方式主要取决于属性名的形式和是否需要动态指定属性名。