導讀經常看到一些JavaScript的代碼髒亂得無法理解到處都是屬性和方法或者一個循環套著一個循環但如果使用面向對象就能很好的理清代碼並方便理解和修改代碼如果你不希望自己的代碼只有上帝理解的話就請盡量考慮使用面向對象的模式
譯文正文
到處都是屬性方法代碼極其難懂天哪我的程序員你究竟在做什麼?仔細看看這篇指南讓我們一起寫出優雅的面向對象的JavaScript代碼吧!
作為一個開發者能否寫出優雅的代碼對於你的職業生涯至關重要隨著像Nodejs這類技術的發展你甚至可以在服務器端使用JavaScript了同樣的你也可以使用JavaScript來控制MongoDB的持續數據存儲
文本標記
文本標記只是JavaScript裡創建對象的一種方法當然這裡肯定不止這一種但它是你在只打算創建一個對象實例時的首選方法
var bill = {}
上面的代碼並不實用它只是一個空對象接下來我們動態地向這個對象中添加一些屬性和方法
billname = “Bill E Goat”
billsound = function() {
consolelog( bahhh! )
}
這裡添加了屬性name並且給它分配了值“Bill E Goat”我們並不需要先創建一個空對象而可以把所有代碼直接寫在一對括號裡
var bill = {
name “Bill E Goat”
sound function() {
consolelog( bahhh! )
}
}
是不是很美觀?訪問它的屬性和方法就像呼吸一樣簡單自然
billname // “Bill E Goat”
billsound() // “bahhh”
如果屬性名不是一個合法的標志符我們還可以這樣訪問它
bill[name] // “Bill E Goat”
注意我在調用方法時在其後添加了圓括號現在我們再重寫一下當前的sound方法並添加一個參數
billsound = function(noise) {
consolelog(noise)
}
billsound(“brrr!”) // “brrr!” Hes cold )
很好我們已經傳入參數了並且在方法定義中訪問了它接下來向對象中增加一個新方法來訪問name屬性
billsayName = function() {
consolelog( “Hello “ + thisname )
}
billsayName() // “Hello Bill E Goat”
我們可以使用thispropertyName(在本例中即thisname)在方法內訪問屬性
billsayName // function
怎麼回事?訪問sayName方法返回了一個方法定義現在讓我們再深入些
From:http://tw.wingwit.com/Article/program/Java/JSP/201311/19855.html