js对象 对属性调用.和[] 两种方式的区别
在 JS 对象中,调用属性一般有两种方法——点和中括号的方法。 标准格式是对象.属性(不带双引号),注意一点的是:js对象的属性,key标准是不用加引号的,加也可以,特别的情况必须加,如果key数字啊,表达式啊等等。
加引号是为了将其视为整体,认识一点:从对象角度,属性是不加引号的,如name,"name"这是啥,属性不可能是“name”,所以即使加了双引号,对象调用时还是要去掉引号的
例如
使用点方法
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]); // cedric2.中括号方法里面的属性名可以是数字,而点方法后面的属性名不可以是数字
3.当动态为对象添加属性时,必须使用 中括号 [], 不可以用点方法
本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!