學習js一段時間,一度搞不清楚「數組」和對象的根本區別。兩者均可以用來表示數據的集合。php
好比說一個數組是a=【1,2,3,4】,一個對象是a={0:1,1:2,2:3,3:4}數組
輸出alert(a[1]),兩者的輸出結果相同。花了一點時間整理了我對對象和數組的理解。學習
區別一:對象
數組是有序數據的集合,而對象是無序數據的集合。數據
區別二:語言
數組的數據沒有名稱,只有下標,而對象的數據須要指定名稱。集合
學過其餘語言的人可能會提出「關聯數組「是能夠有名稱的。時間
好比在js中,能夠這樣定義一個關聯數組:
a【「城市」】= 「北京」;
a【「面積」】= 「168561」
a【「入口」】= 「14455」;
很明顯,關聯數組的數值是有名稱的,可是,在js中關聯數組被認爲是一個對象,而不是數組。
這和其餘語言不同好比php中關聯數組是一個數組。