函数参数不固定的时候如何求返回值?arguments

arguments实质为个数组,里面存的是传给函数的参数,因为是数组,所以有length属性,通过length属性可以知道里面有几个变量。对于参数不固定的函数,求所有参数的和,思路如下:

(1)定义一个函数,给函数命名。

(2)将所有参数放到要用的函数。

(3)根据要求,要求所有

参数的和的结果,把开始的结果存在一个定义的变量里,初始值为0。

(4)对每次函数的结果依次求和,用循环,并把每次求和的结果赋给存结果参数的变量求和放在那个变量里

(5)输出返回值。

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>返回值</title>
</head>
<script type="text/javascript">
function sum(){
    var result=0;
    for(var i=0;i<arguments.length;i++){
        result+=arguments[i];
    }
    return result;
    
}
alert(sum(6,5,4,3));
</script>
<body>

</body>
</html>

 (6)css(oDiv,'width')-----获取样式

  css(oDiv,'width','200px')----设置样式

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>返回值</title>
</head>
<script type="text/javascript">
function css(){
    if(arguments.length==2){
        return arguments[0].style[arguments[1]]
    }
    else{
        return arguments[0].style[arguments[1]]=arguments[2];
    }
}
window.onload=function(){
    var oDiv=document.getElementById('div1');
    css(oDiv,'background','green')
}
</script>
<body>
<div id="div1" style="200px;height:200px;background:red;"></div>
</body>
</html>

 其实,这种方式并不是我们常用的,arguments[0],arguments[1],arguments[2]写写起来并不是很方便,我们可以用参数代替。

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>返回值</title>
</head>
<script type="text/javascript">
function css(obj,name,value){
    alert(obj==arguments[0]);
    if(arguments.length==2){
        return obj.style[name]
    }
    else{
        return obj.style[name]=value;
    }
}
window.onload=function(){
    var oDiv=document.getElementById('div1');
    css(oDiv,'background','green')
}
</script>
<body>
<div id="div1" style="200px;height:200px;background:red;"></div>
</body>
</html>
衣带渐宽终不悔,为伊消得人憔悴,憔悴半天也没用,还是努力起来人富贵
原文地址:https://www.cnblogs.com/zhangjingyun/p/4560947.html