天天看點

《JavaScript面向對象精要》——1.5 通路屬性

本節書摘來自異步社群《javascript面向對象精要》一書中的第1章,第1.5節,作者:【美】nicholas c. zakas 譯者: 胡世傑 更多章節内容可以通路雲栖社群“異步社群”公衆号檢視。

屬性是對象中儲存的名字和值的配對。點号是javascript中通路屬性的最通用做法(就跟許多面向對象語言一樣),不過也可以用中括号通路javascript對象的屬性。

例如,下面的代碼使用點号。

也可以如下例用中括号,方法的名字現在由中括号中的字元串表示。

在需要動态決定通路哪個屬性時,這個文法特别有用。例如下例的中括号允許你用變量而不是字元串字面形式來指定通路的屬性。

在這段代碼中,變量method的值是“push”,是以在array上調用了push()方法。這種能力極其有用,你會在本書中随處看到這種用法。記住一點:除了文法不同,在性能或其他方面點号和中括号都大緻相同,唯一差別在于中括号允許你在屬性名字上使用特殊字元。開發者通常認為點号更易讀,是以你更多地看到點号而不是中括号。

繼續閱讀