js函数参数

JavaScript 函数参数
    1.js函数没有对参数的值进行检查
    2.jd函数参数与其他大多数语言的区别是:
            1>.他不会关注有多少个参数被传递
            2>.不关注函数参数传递的数据类型
    
    一,函数显式参数与隐藏参数(arguments)
        function Name(parameter1, parameter2, parameter3) {
                code to be executed
        }
        1.函数显示参数在函数定义时列出
        2.函数隐藏参数是函数在调用是传递给函数真正的值
    二,参数规则
        JavaScript 函数定义时参数没有指定数据类型。
        JavaScript 对隐藏参数没有限制
        JavaScript 对隐藏参数的个数没有限制
    三,默认参数
        如果函数在调用时缺少参数,参数会默认设置为:undefined
        有是这是可以的,但是最好给参数一个默认值
        function myFunction(y)
        {
            if(y === undefined)
            {
                y = 0;
            }
        }
        或者可以更简单一点
        function myFunction(y)
        {
            y = y || 0;
        }
        如果y已经定义 y 为 true 返回y 如果y没有定义 undefined 为 false 返回0;
    四,Arguments 对象
        JavaScript 函数内置了一个arguments 对象
        arguments 对象包含了函数调用的参数数组
        通过这种方式你可以很方便的找到最后一个参数的值:
        x = findMax(1, 123, 500, 115, 44, 88);
        求一个函数的最大值
        function findMax() {

                var i, max = arguments[0];

                if(arguments.length < 2){

                    return max;

                }

                for (i = 1; i < arguments.length; i++) {

                    if (arguments[i] > max) {

                    max = arguments[i];

                    }

                }

            return max;

        }
    五,通过值传递参数
    
            这个和java里面不一样   
            
                java   值传递 和 引用传递
                js     只有值传递
    
    六,通过对象传递值
            在javaScript中,可以引用对象的值
            因此我们在函数内部修改对象的值就可以修改其初始的值
            修改对象属性可作用于函数外部(全局变量)
            var obj = {x:1};
            // 通过对象传递参数
            function myFunction(obj) {
                obj.x++; //修改参数对象obj.x的值,函数外定义的obj也将会被修改
                console.log(obj.x);
            }
            myFunction(obj); // 2
            console.log(obj.x); // 2
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值