这篇文章主要讲解了“javascript对象有哪些特点”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“javascript对象有哪些特点”吧!
javascript对象的特点:1、“键值对”列表中的最后一个属性要以逗号结尾;2、使用const声明的对象,其数据是可以被修改的;3、属性名可以是“[值]”方式;4、“in”运算符左边必须是属性名,右边是对象名,返回的是布尔值。
本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。
js对象的九大特点
第一:“键值对”列表中的最后一个属性要以逗号结尾
这个逗号有个高大上的名字:尾随逗号(trailing)
原因应该就是为了规范,简单来说就是为了美观。
第二:使用const声明的对象,其数据是可以被修改的
该对象内部的属性是可以被修改的。
对对象整体进行更改,是不行滴。
第三:多词属性名来捣乱
键值对中的键,也就是name:"zhangsan"中的name如果变成“new name”。
名字由一个单词变为多个单词,会使得有些事物发生改变。
点不能使用了。原先是person.name,现在可不能写person.new name。
应该写person["new name"]
遇到多词名称,记住三点:
用括号
名字加引号
括号内可以直接写字符串,也可以写变量,因为变量中也可以写字符串
第四:属性名还有一种古怪的方式,方括号[]
let name="apple"
var o={
[name]:5,
}
alert(o.apple);
记住,方括号中存放的不是确定的,死板的固定值,而是变量,变量懂吗?
灵活多变的那种。
第五:特殊情况下,属性值可以简写
function makeUser(name, age) {
return {
name: name,
age: age,
// ……其他的属性
};
}
let user = makeUser("John", 30);
alert(user.name); // John
观察可以得到,属性名和变量名一样。
此时,可以换个写法:
变化之前:name:name
变化之后:name
有啥意义?就是图个方便,某种意义上来说还增加了初学者的负担,所以事物皆有两面性,无事无非。
第六:属性名称可以随便起
不用再担心关键字不能用了(为什么一定要用关键字?闲着蛋疼)
记住一点:__proto__
的属性。我们不能将它设置为一个非对象的值
第七:“in”的作用
"key" in object
属性名 在 对象中。
in左边必须是属性名,右边是对象名,返回的是布尔值true或者false。
属性名通常是字符串,但也有可能是变量,变量中存放的还是字符串。
所以还是字符串在起作用。
为什么要in?
因为怕undefined来捣乱。
第八:for...in循环
语法格式:
for (key in object) {
// 对此对象属性中的每个键执行的代码
}
其中,除了in左边的key不确定之外(可以用其他单词来代替),其他几个单词的结构都是确定的。
侧面反映了,这个语句中重要的是“到底是要遍历哪一个对象”。
第九:对象属性的顺序
一个概念:整数属性名
属性名是整数字符串
另一个概念:整数字符串
可以被转化为整数的字符串
“1”,“2”等就是整数字符串。
记住:
当属性名不是整数字符串,遍历对象输出数据时的顺序按照创建时的顺序
当属性名是整数字符串,按照从小到大的顺序。
感谢各位的阅读,以上就是“javascript对象有哪些特点”的内容了,经过本文的学习后,相信大家对javascript对象有哪些特点这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!