2016-04-18 46 views
1

我正在閱讀這本書JavaScript:The Good Parts。據說可變鍵控收集在JavaScript中意味着什麼?

JavaScript中的對象是可變鍵控集合。

什麼是可變鍵控收集是什麼意思?

據我所知,在互聯網上,mutable意味着價值可以改變。我找不到什麼鍵控收集的意思。

+0

[Javascript函數對象或類型是否可能重複](http://stackoverflow.com/questions/15399937/are-functions-objects-or-types-in-javascript) – MusicLovingIndianGirl

回答

1

對象是具有關聯值的鍵的集合。這可以被稱爲「鍵集」:

var o = { 
    foo: "bar", 
    bar: "baz" 
} 

(其中foobar這裏是關鍵)。

...這是可以改變的(因爲你已經說過,「可變」部分):

o.foo = "foobar"; 
o.foobar = "bar"; 
+0

是_method's_ name還有一個_key_? – user31782

+0

可以,是的。如果我們定義'o.foo = function(){...}',那麼「foo」就是關鍵。 –

+0

@JamesDonnelly,你能解釋一下嗎?除了對象定義的所有類型都定義了不可變的值(值不能被修改)_ [Ref](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures #Primitive_values)..如果可能的話.. – Rayon

1

這裏keyed這個關鍵字表示數據是「named」,「indexed」或「keyed」。

{ 
key : value, 
key2: value2 
} 

的集合,因爲它包含的數據的集合。

0

它是關於JavaScript中的對象的工作方式,它們的行爲如C#字典,用於示例或PHP中的命名數組。 obj.someKey相當於obj['someKey'],您可以隨時更改與這些鍵關聯的值或實際刪除它們。

更高級:密鑰唯一標識與其一起存儲的值,並且系統針對性能進行了優化,因此您可以使用它來索引信息或獲取不同的列表值等。