BadGirl_Xiao

导航

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编辑  收藏  举报