你不知道的JS系列 ( 29 ) - 对象属性

时间:2020-03-17 08:37:41   收藏:0   阅读:56
存储在对象容器内部的是这些属性的名称,它们就像指针(从技术角度来说是引用)一样,指向这些值真正的存储位置。

 

var myObject = {
  a: 2
}
myObject.a; // 2
myObject[‘a‘]; // 2

. 语法通常被称为‘属性访问’,[] 语法通常被称为‘键访问’。这两种语法的主要区别在于,. 操作符要求属性名满足标识符的命名规范,而 [] 语法可以接受任意 utf-8/Unicode 字符串作为属性名,比如说 ‘super-fun!’,就必须用 [] 访问,因为它不是一个有效的标识符属性名

 

var myObject = {};
myObject[true] = ‘foo‘;
myObject[3] = ‘bar‘;
myObject[myObject] = ‘baz‘;

myObject[‘true‘]; // ‘foo‘
myObject[‘3‘]; // ‘bar‘
myObject[‘[object object]‘]; // ‘baz‘

在对象中,属性名永远都是字符串。如果你使用 string 以外的其他值作为属性名,那它首先会被转换为一个字符串

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!