在進行編程時,必免不了要碰到復雜的功能。初學者最怕復雜的功能,因為不能夠很好的進行功能邊界劃分,只能一大串if、循環(huán)加case堆疊在一起,結(jié)果出來的程序自己看著暈,別人看著更暈。好程序不是寫給computer的,而是寫給human的。遇到復雜功能,應該想著把它簡化、組件化,把小功能封裝成小組件,小功能塊可以任意的組合得到千變?nèi)f化的復雜功能。function就可以幫助我們把功能進行封裝。那什么是封裝呢。要我說,只要把具體實現(xiàn)給打包,對外提供調(diào)用接口那就是封裝,方法也好、類也好就做了這些事。
javascript中的function可以用來創(chuàng)建方法、也可以用來創(chuàng)建類,實際上我們可以認為是用function來模擬出的類(說到類一般都會要去了解閉包的知識)。還是先看一下方法吧。
javascript函數(shù)分為有名函數(shù)、匿名函數(shù)和在匿名函數(shù)基礎(chǔ)上延伸出來的立即執(zhí)行函數(shù)。
普通函數(shù)就是用function直接聲明的有名函數(shù)。
function Hello() {
alert("hello , everybody!");
};
Hello();
function SayHelloTo(somebody) {
alert("hello , " + somebody + "!");
};
SayHelloTo("張三");
上面分別創(chuàng)建了Hello和SayHelloTo方法。Hello不帶有參數(shù),直接通過Hello()來完成調(diào)用。SayHelloTo方法帶有一個參數(shù),向誰問候時需要知道是在問候誰。在調(diào)用SayHelloTo(“張三”)時要傳入?yún)?shù)。這些代碼和java、C#都沒有什么太大區(qū)別。在方法重載上卻有較大改變,javascript本身并不支持什么重載,一個方法名就對應一個方法。如果強制的寫出多個同名方法,其實會出現(xiàn)先寫的方法被覆蓋掉的情況。
function Hello() {
alert("hello , everybody!");
};
Hello();
function Hello(somebody) {
alert("hello , " + somebody + "!");
};
Hello("張三");
2015年全國職稱計算機考試教材(2007模 .. 定價:¥225 優(yōu)惠價:¥213 更多書籍 | |
全國職稱計算機考試速成過關(guān)系列套裝:W .. 定價:¥133 優(yōu)惠價:¥133.0 更多書籍 |