JavaScript教程:函数的 arguments 隐形参数

说明

在 函数中 不需要定义形参,就可以在函数体中,获取所有参数

使用 arguments

<script>
    function test(){
        console.log("arguments参数:",arguments)
        console.log("arguments长度:",arguments.length)
    }
    test()
</script>

执行结果如下:

结论: arguments 是数组

传1个参数

<script>
    function test2(){
        console.log("arguments参数:",arguments)
        console.log("arguments长度:",arguments.length)

        for(var i=0,len=arguments.length;i<len;i++){
            console.log("元素:",arguments[i])
        }
    }
    test2("李雷")
</script>

执行结果:

结论:不定义形参,也可以传入参数,通过 arguments 参数,可以接收参数

传多个参数

<script>
    function test2(){
        console.log("arguments参数:",arguments)
        console.log("arguments长度:",arguments.length)

        for(var i=0,len=arguments.length;i<len;i++){
            console.log("元素:",arguments[i])
        }
    }
    test2("李雷","韩梅梅","lucy")
</script>

执行结果:

结论:不定义形参,也可以传入多个参数,通过 arguments 参数,可以接收到所有参数

arguments 不影响形参的使用

<script>
    function sum(a,b){
        console.log("a:",a)
        console.log("b:",b)
        console.log("arguments参数:",arguments)
        console.log("arguments长度:",arguments.length)

        for(var i=0,len=arguments.length;i<len;i++){
            console.log("元素:",arguments[i])
        }
    }
    sum(100,200)
</script>

执行结果:

结论 arguments 不影响形参的使用,形参可以接收到数据

使用建议

虽然 arguments 可以接收到所有参数,但还是要在函数 定义形参,形参的可读性更强


原文出处:/show_1IX32q0ypICd.html