对象属性的点表示法与括号表示法 – 有什么区别?

对象属性的点表示法与括号表示法 – 有什么区别?

点符号

点表示法更简单且更具可读性。它在以下情况下使用:

  1. 属性名称是一个有效的标识符(仅包含字母、数字、$或_,并且不以数字开头)。
  2. 您提前知道属性名称。

例如:

const person = { name: 'alice', age: 30 };
console.log(person.name); // 'alice'

括号表示法

括号表示法更加灵活,允许您:

  1. 使用存储在变量中的属性名称。
  2. 访问带有非有效标识符的特殊字符、空格或数字的属性。
  3. 在运行时动态构建属性名称。

示例:
1.使用变量访问属性:

const person = { name: 'alice', age: 30 };
const prop = 'name';
console.log(person[prop]); // 'alice'

2.带有特殊字符或空格的属性:

const person = { 'first name': 'alice', age: 30 };
console.log(person['first name']); // 'alice'

3.动态生成的属性名称:

const property = 'name';
console.log(person[property]); // 'alice'

何时使用括号表示法

  • 如果属性名称是动态的或存储在变量中。
  • 如果属性名称包含空格、特殊字符或以数字开头。

对于大多数其他情况,首选点表示法,因为它更具可读性和简洁性。

以上就是对象属性的点表示法与括号表示法 – 有什么区别?的详细内容,更多请关注硕下网其它相关文章!