zoukankan      html  css  js  c++  java
  • Javascript变长参数和默认参数

    /* javascript 变长参数
     * 实参少于形参: 剩下的参数如果没有默认值,将解析为undefined
     * 实参多于形参: 剩下的实参可以通过 "实参对象"-arguments 来获取
     *         - 实参对象是对象, 但是有数组的特性, 类数组
     *         - arguments 保存的是所有参数,如 arguments[0]表示的是第一个实参,length属性得到实参个数
     *         - 按照这个对象,那么函数可以根本不用参数, 不过有参数可以减少变量的声明并使代码更清晰
     */
    function sum(){
        var sum = 0;
        for(var i=0;i<arguments.length;++i)
            sum += arguments[i];
        return sum;
    }
    console.log(sum(2,1,3,4)); //10
    //默认参数
    /*--Method 1--*/
    function defaultParam1(first, second){
        var first = first ? first : 1; // 设置默认值
        var second = second ? second : 2;
        return first+second;
    }
    /*--Method 2--*/
    function defaultParam2(){
        var first = arguments[0] ? arguments[0] : 1; // 设置默认值
        var second = arguments[1] ? arguments[1] : 2;
        return first+second;
    }
    /*--Method 3--*/
    function defaultParam3(first, second){
        first = first || 1;
        second = second || 2;
        return first+second;
    }
    

    默认参数还有直接在函数形参后面直接加默认值的方法, 与C++类似. 详细信息参考: https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Functions/Default_parameters

  • 相关阅读:
    css3线性渐变
    php的%s
    面向对象
    excel导入导出
    保存Excel
    保存word
    图片预览
    验证日期输入格式
    级联菜单
    中级前端知识点提要
  • 原文地址:https://www.cnblogs.com/roger9567/p/5039035.html
Copyright © 2011-2022 走看看