1.文本和属性:
1)对象的属性名,除了使用关键字,也可以用多字字词语句条作为属性名,但必须加引号
let employee = {
name="Lisa",
"like work" : true , // 多字字词语句条作为属性名,必须加引号
}; //如果想改多词属性的值,就需要用下面的方括号
2.列表的最后一个的属性值,以逗号结尾(如上所示)
这叫尾随或者悬挂逗号,这样便于我们添加删除和移动属性。
3.用const声明的对象是可以被修改的
注意这里的修改指的是对象里面的属性值,这里的不能够对对象整体进行修改
const employee = {
name="Lisa",
};
employee.name="Anna"; //不会报错,const声明仅固定了对象的值,而不是对象 里面内容
alert(user.name); //Anna
二、访问属性
1.点符号:obj.porperty
2.方括号:obj["porperty"]
key值必须是有效的变量标识符,这就要求:不能包含空格,不以数字开头,也不包括特殊字符(允许$和_),当然这里也有另一种情况,就是使用方括号,这可用于任何字符串。
let user={ }
user ["likes birds"] =true //设置
在这里要注意方括号里面的字符串要放在引号中,单引号和双引都可以
三、属性名称限制
1.我们已经知道,变量名不能是编程语言保留字,比如“for,let,return”等,但是对象的属性名并不受限制
总之属性名没有限制,可以是任何字符串或者symbol(一种特殊的标志符类型),其他的类型会被自动转换为字符串,不如当数字0用作对象属性名时,会被转换为字符串“0”
三、属性存在测试
1.undefined。因为在JavaScript中,能够被访问任何属性,即使不存在也不会报错,读取不存在时会得到undefined。
结果是true
2.in,in的左边必须是属性名,通常是一个带引号的字符串。