您好,登錄后才能下訂單哦!
本文實(shí)例講述了JS函數(shù)動(dòng)態(tài)傳遞參數(shù)的方法。分享給大家供大家參考,具體如下:
js函數(shù)體內(nèi)可以通過arguments
對(duì)象來接收傳遞進(jìn)來的參數(shù),利用這一對(duì)象屬性可以動(dòng)態(tài)傳參。
function box() { return arguments[0]+' | '+arguments[1]; //得到每次參數(shù)的值 } alert(box(1,2,3,4,5,6)); //傳遞參數(shù)
arguments
對(duì)象的length屬性可以得到參數(shù)的數(shù)量。
function box() { return arguments.length; //得到6 } alert(box(1,2,3,4,5,6));
我們可以利用length這個(gè)屬性,來智能的判斷有多少參數(shù),然后把參數(shù)進(jìn)行合理的應(yīng)用。比如,要實(shí)現(xiàn)一個(gè)加法運(yùn)算,將所有傳進(jìn)來的數(shù)字累加,而數(shù)字的個(gè)數(shù)又不確定。
function box() { var sum = 0; if (arguments.length == 0) return sum; //如果沒有參數(shù),退出 for(var i = 0;i < arguments.length; i++) { //如果有,就累加 sum = sum + arguments[i]; } return sum; //返回累加結(jié)果 } 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動(dòng)態(tài)獲取傳參個(gè)數(shù)</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>
運(yùn)行結(jié)果:
感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運(yùn)行工具:http://tools.jb51.net/code/HtmlJsRun測試上述代碼運(yùn)行效果。
更多關(guān)于JavaScript相關(guān)內(nèi)容可查看本站專題:《JavaScript常用函數(shù)技巧匯總》、《javascript面向?qū)ο笕腴T教程》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》
希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。