函数的扩展

  • ** 参考**
    书籍:ECMAScript 6 入门
    作者:阮一峰

  • 函数参数的默认值
    ES6 允许为函数的参数设置默认值,即直接写在参数定义的后面。

  • 应用
    利用参数默认值,可以指定某一个参数不得省略,如果省略就抛出一个错误。


  • 扩展运算符...的应用
    扩展运算符提供了数组合并的新写法。
    与解构赋值结合。
    解决函数返回值只有一个问题。
    将字符串转为数组。

  • 箭头函数=>
  • 函数绑定运算符::

  • 尾调用优化
    尾调用由于是函数的最后一步操作,不需要保留外层函数的调用帧,因为调用位置、内部变量等信息都不会再用到了,只要直接用内层函数的调用帧,取代外层函数的调用帧就可以了,这将大大节省内存。

  • 尾递归优化
    递归非常耗费内存,因为需要同时保存成千上百个调用帧,很容易发生“栈溢出”错误(stack overflow)。但对于尾递归来说,由于只存在一个调用帧,所以永远不会发生“栈溢出”错误。

  • 函数参数的尾逗号
    如果像上面这样,将参数写成多行(即每个参数占据一行),以后修改代码的时候,想为函数clownsEverywhere添加第三个参数,或者调整参数的次序,就势必要在原来最后一个参数后面添加一个逗号。这对于版本管理系统来说,就会显示添加逗号的那一行也发生了变动。这看上去有点冗余,因此新的语法允许定义和调用时,尾部直接有一个逗号。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 函数参数的默认值 基本用法 在ES6之前,不能直接为函数的参数指定默认值,只能采用变通的方法。 上面代码检查函数l...
    呼呼哥阅读 8,917评论 0 1
  • 1、函数参数的默认值1)基本用法在ES6之前,不能直接为函数的参数指定默认值,为了避免这个问题,通常需要先判断一下...
    秋天de童话阅读 3,043评论 0 0
  • 1. 函数参数默认值(参数中,绑定默认值) function(x, y = 'zhang') { ... } 替代...
    winzhyming阅读 2,600评论 0 0
  • 感恩父母的养育之恩,成就现在的我。感恩女儿独立照顾自己让我上班无忧。感恩家人的不理解,让我能够调整好心态。感恩朋友...
    我不叫许仲斌阅读 1,059评论 0 0
  • 最近好多小伙伴跟我聊感情的事情。我想说:我也是个小白啊,遇到喜欢的人也会紧张,也会不知所措。只是心里抗打击能...
    杨小露阅读 1,280评论 0 0