javascript对象有什么特点(JavaScript)
本教程操作環境: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對象有什么特點的詳細內容,更多請關注風君子博客其它相關文章!
總結
以上是生活随笔為你收集整理的javascript对象有什么特点(JavaScript)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vivo S18 / Pro 手机采用“
- 下一篇: php strspn函数怎么用?