第一:“键值对”列表中的最后一个属性要以逗号结尾
这个逗号有个高大上的名字:尾随逗号(trailing)
原因应该就是为了规范,简单来说就是为了美观。
第二:使用const声明的对象是可以被修改的
该对象内部的属性是可以被修改的。
对对象整体进行更改,是不行滴。
第三:多词属性来捣乱
键值对中的键,也就是name:"zhangsan"中的name如果变成“new name”。
名字由一个单词变为多个单词,会使得有些事物发生改变。
遇到多词名称,记住三点:
第四:属性名还有一种古怪的方式,方括号【】
1 let name="apple" 2 var o={ 3 [name]:5, 4 } 5 alert(o.apple);
记住,方括号中存放的不是确定的,死板的固定值,而是变量,变量懂吗?
灵活多变的那种。
第五:属性值可以简写
1 function makeUser(name, age) { 2 return { 3 name: name, 4 age: age, 5 // ……其他的属性 6 }; 7 } 8 9 let user = makeUser("John", 30); 10 alert(user.name); // John
观察可以得到,属性名和变量名一样。
此时,可以换个写法:
变化之前:name:name
变化之后:name
有啥意义?就是图个方便,某种意义上来说还增加了初学者的负担,所以事物皆有两面性,无事无非。
第六:属性名称可以随便起
不用再担心关键字不能用了(为什么一定要用关键字?闲着蛋疼)
记住一点:__proto__
的属性。我们不能将它设置为一个非对象的值
原文:https://www.cnblogs.com/flyover/p/14081253.html