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.当动态为对象添加属性时,必须使用 中括号 [], 不可以用点方法
本文内容仅供个人学习/研究/参考使用,不构成任何决策建议或专业指导。分享/转载时请标明原文来源,同时请勿将内容用于商业售卖、虚假宣传等非学习用途哦~感谢您的理解与支持!