js函数默认参数

为何要有默认参数?

降低函数调用的难度,试想一下,假设一个函数有三个变量,年龄,姓名,城市。假设大多数人来源于同一城市,那么就可以把城市值设置成默认参数。

如何设置函数的默认参数?

如下在声明变量的时候为参数设置了默认值。是利用了arguments这个关键字参数。这个arguments本质上是个数组。利用? 设置的默认值。

<script>
function example(a,b){ 
var a=arguments[0]?argumenes[0]:1;//设置a的默认值为0
var b=arguments[1]?arguments[1]:2;//设置b的默认值为1
  return a+b; 
}
alert(example())
//没有给参数传值
</script>

这个太废纸了。看写法2

<script>
function example(a,b){ 
var a=a || 1;//设置a的默认值为0
var b=b || 2;//设置b的默认值为1
  return a+b; 
}
alert(example())
//没有给参数传值
</script>

用||来设置默认参数。

获取参数个数

啥,参数个数你自己不知道几个么?因为有时候根据函数参数个数的不同,会设置不同的流程,所有就需要判断函数的参数个数。

<script>
         function demo(){
             var count = arguments.length //把参数的长度保存的count的变量中
             return count;
                                 }
          alert(demo(1,2,3,4,5,6))       
</script>

结果为6

举个例子下面这个函数根据参数的不同做出不同的反应。

<script>
function abs(a,b,c) { 
    if (arguments.length == 0) {
        return 0;
    }   
    else if (arguments.length == 1) {
        return "一个参数"
    }
    else if (arguments.length == 2) {
        return "二个参数"
    }

    else {
        return 2;
    }
    }
alert(abs(1));
alert(abs(1,2));
alert(abs(1,2,3,4));
   
</script>

注意到abs(1,2,3,4)调用时有三个参数,而定义时只有三个,这没关系。 写多了不会报错,但是写的最后一个参数也没用。

如何获取未定义参数?

比如说你定义的函数里就两个参数,myfunction(a,b)。但是你调用时时myfunction(1,2,3)那么如何获取这第三个参数呢?

image.png

如图,用...rest关键字设置未定义参数。
深入解析 ES6:Rest 参数和参数默认值 - WEB前端 - 伯乐在线

事实上,利用rest参数是可以取代那个垃圾的argumnets对象的。。
举个例子
还是获取参数个数

image.png

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • JavaScript 函数定义 JavaScript 使用关键字 function 定义函数。函数可以通过声明定义...
    鹿守心畔光阅读 566评论 0 1
  • 函数参数的默认值 基本用法 在ES6之前,不能直接为函数的参数指定默认值,只能采用变通的方法。 上面代码检查函数l...
    呼呼哥阅读 3,765评论 0 1
  • 第 2 章:函数基础 函数式编程不是仅仅用 function 这个关键词来编程。如果真这么简单,那我这本书可以到此...
    iKcamp阅读 1,048评论 0 7
  • 昨天晚上敷着面膜看完了萨利机长,这部片真的很震撼。首先它一反常态,不像普通的灾难片,着重点是坠机的那一刻。...
    Jango哑炮阅读 410评论 0 0
  • 《金刚经》记录的是佛陀与弟子须菩提的一段对话,讲述了追求解脱觉悟之道,还包含认识世界的大智慧,超越了宗教本身。本...
    KantCat阅读 725评论 0 2

友情链接更多精彩内容