JS 模拟 重载
重载:方法,根据传入的参数列表不同,执行不同的任务。
比如:functiion jz(money){
//现金结账:验钞,找零
}
function jz(cardId,pwd){
//刷卡结账:验证卡号,验证密码
}
jz(300); //现金结账
jz("0000655112341234","666666") //刷卡结账
arguments对象:方法对象中保存所有参数的类数组对象
类数组对象:长的像数组的对象
自动创建,直接使用
arguments.length:保存变量的个数
arguments[i]:访问传入的第i个变量。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <script type="text/javascript"> function calc(){ //arguments if(arguments.length==1){ var n = parseFloat(arguments[0]) alert(n*n);//100 }else{ var n = parseFloat(arguments[0]) var m = parseFloat(arguments[1]) alert(m+n);//22 } } </script> <button onclick="calc(10);">算平方</button> <button onclick="calc(10,12);">算加法</button> </body> </html>
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <script type="text/javascript"> function add(){ console.log(arguments.length); //9 var sum =0; for(var i=0; i<arguments.length; i++) sum+=parseFloat(arguments[i]); return sum; } var sum = add(5,8,9,6,5,4,7,8,5); document.write(sum); </script> </body> </html>
posted on 2017-08-01 13:57 BadGirl_Xiao 阅读(289) 评论(0) 编辑 收藏 举报