您好,登錄后才能下訂單哦!
本文實例講述了JS函數動態傳遞參數的方法。分享給大家供大家參考,具體如下:
js函數體內可以通過arguments
對象來接收傳遞進來的參數,利用這一對象屬性可以動態傳參。
function box() { return arguments[0]+' | '+arguments[1]; //得到每次參數的值 } alert(box(1,2,3,4,5,6)); //傳遞參數
arguments
對象的length屬性可以得到參數的數量。
function box() { return arguments.length; //得到6 } alert(box(1,2,3,4,5,6));
我們可以利用length這個屬性,來智能的判斷有多少參數,然后把參數進行合理的應用。比如,要實現一個加法運算,將所有傳進來的數字累加,而數字的個數又不確定。
function box() { var sum = 0; if (arguments.length == 0) return sum; //如果沒有參數,退出 for(var i = 0;i < arguments.length; i++) { //如果有,就累加 sum = sum + arguments[i]; } return sum; //返回累加結果 } alert(box(5,9,12));
例子:
function loading() { var a=""; for (var index in arguments) { a+=arguments[index]+"\n"; } alert(a); } loading("xxx","yyyy","ccc");
完整Demo示例:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>www.jb51.net arguments動態獲取傳參個數</title> </head> <body> <script> function box(){ sum=0; for(i=0;i<arguments.length;i++){ sum+=arguments[i]; } return sum; } console.log(box(1,3,3,5,6)) </script> </body> </html>
運行結果:
感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運行工具:http://tools.jb51.net/code/HtmlJsRun測試上述代碼運行效果。
更多關于JavaScript相關內容可查看本站專題:《JavaScript常用函數技巧匯總》、《javascript面向對象入門教程》、《JavaScript錯誤與調試技巧總結》、《JavaScript數據結構與算法技巧總結》及《JavaScript數學運算用法總結》
希望本文所述對大家JavaScript程序設計有所幫助。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。