參與iT邦JavaScript中忍比賽,獲得一本JS武林祕級“JavaScript設計模式”,因而閉門修練月餘,今神功既成故節錄三十片段,以饗邦友。
由於函式在JS實在太重要,所以在此節我們繼續加強說明函式重點:參數。
JS函式中的參數,可以直接視為“建議”參數,也就是:
“定義時就算有指定,但呼叫時不給也沒關係。”
先看範例:
var myFunc = function(a,b,c) { }; //標準的參數
myFunc(1);
//a=1, b,c皆為undefined,不會發生錯誤
myFunc(1,2);
//a=1, b=2, c為undefined,不會發生錯誤
myFunc(1,2,3);
//a=1, b=2, c=3,不會發生錯誤
myFunc(1,2,3,4,5,6,7,8,9,10);
//a=1, b=2, c=3,不會發生錯誤
在最後一例中,若我們要存取參數中的第4個至第10個,那該怎麼作呢?
所幸每個函式都會有內建的屬性來記錄參數群:
for (var i = 0; i < arguments.length; i++){
console.log(arguments[i]);
};
因為arguments雖看起來像似Array,但其實並不完全如此。所以為了真能使用Array方法(splice, slice, push, pop),需把參數群轉換成Array,指令如下:
var args = Array.prototype.slice.apply(arguments);
JS函式功能既強大又重要,此節為四小段之最後一段,若能熟練之,則有好沒壞啦!!
咱先進廣告,明天回來...
(待)
為什麼又進廣告 節目太短
第一段廣告:老鷹表演空手道與坐沙發....
早鳥禮,咖啡一杯~~~
您好,我是新聞局督察,據報您的節目廣告太多,我們特來取締.....
先孫,您搞清楚好不好,你們新聞局早就收掉了好不好,還想來唬我...
做完這湍,下次要改到淡水開茶室,裏面要有金門王的牌子和位子...