在 JS 对象中使用 . 和 [] 操作属性的区别

在 JS 对象中,调用属性一般有两种方法——点和中括号的方法。

例如

  • 使用点方法
var obj = {
    name: "cedric"
}

console.log(obj.name); // cedric
  • 使用 [ ] 方法
var obj = {
    name: "cedric"
}

console.log(obj["name"]); // cedric

点方法是在对象名后面跟上属性名,而中括号方法里的索引存放的与属性名字相同的字符串

二者区别

  1. 点方法后面跟的必须是一个指定的属性名称,而中括号方法里面可以是变量。例如
var haha = "name";
console.log(obj.haha); // undefined
console.log(obj[haha]); // cedric
  1. 中括号方法里面的属性名可以是数字,而点方法后面的属性名不可以是数字
  2. 当动态为对象添加属性时,必须使用 中括号 [], 不可以用点方法
原文地址:https://www.cnblogs.com/cckui/p/9887544.html