美文网首页
ES6--函数扩展

ES6--函数扩展

作者: bjhu电net | 来源:发表于2017-09-21 10:04 被阅读0次

函数新增特性

函数默认值,rest参数,扩展运算符,箭头函数,this绑定,尾调用

函数参数的默认值

{
    //函数参数默认值
    function test(x,y='你好'){
        console.log(x,y)
    }
    test("wode")
    //wode 你好
    test("wode",'tahao')
    //wode tahao
    //默认值后面不能再有 没有默认值的变量,比如参数c但是没有默认值
}
{
    let x='test';
    function test2(x,y=x){
        console.log(x,y)
    }
    test2("hi")
    //hi hi
    //参数中的值取到的实参,实参拥有大的权限
}

rest参数

在不确定有几个参数的时候,可以用...arg,将参数转化成数组,rest参数之后不能有其他的参数。

{
    //rest参数
    function test3(...arg){
        for(let v of arg){
            console.log(v)
        }
    }
    test3(1,2,3,4,5,'a')
    //1,2,3,4,5,a
}

箭头函数

{
    //arrow是函数名,v是参数,v*2是返回值
    let arrow = v => v*2;
    console.log(arrow(3))
    //6
    let arrow2=()=>5;
    console.log(arrow2());
    //5
}

关于箭头函数this的指向,箭头函数中this指向最外层函数的this,是词法作用域,由上下文确定,所以以前的那种var that = this可以不再使用。

尾调用

尾调用的概念非常简单,一句话就能说清楚,就是指某个函数的最后一步是调用另一个函数。可以提高性能。

{
    function tail(x){
        console.log(x)
    }
    function fx(x) {
        return tail(x)//尾调用
    }
    fx(123)
    //123
}

相关文章

  • ES6--函数扩展

    函数新增特性 函数默认值,rest参数,扩展运算符,箭头函数,this绑定,尾调用 函数参数的默认值 rest参数...

  • ES6--函数的扩展

    函数参数的默认值 基本用法 在ES6之前,不能直接为函数的参数指定默认值,只能采用变通的方法。 上面代码检查函数l...

  • ES6--对象扩展

    简洁表示法 在对象中如果有函数,es6中采用简洁表示,a(c){},如果在es6中定义一个函数,那么采用箭头函数l...

  • es6--数值扩展

    在es6中,二进制用0b表示,例如'0b1022221';八进制用0o表示;不区分大小写。 一些数值方法 Numb...

  • ES6--数组扩展

    1.Array.of() Array.of() 方法创建一个具有可变数量参数的新数组实例,而不考虑参数的数量或类型...

  • 深入理解ES6--解构

    深入理解ES6--解构

  • Kotlin 笔记 扩展

    扩展(extension)是指向已有的类中添加函数 扩展函数 定义扩展函数时,在函数前面加上要扩展类的名字,以下代...

  • ES6--对象的扩展

    属性的简洁表示法 ES6允许直接写入变量和函数,作为对象的属性和方法。这样的书写更加简洁。 上面代码表明,ES6允...

  • ES6--数组的扩展

    Array.from() Array.from方法用于将两类对象转为真正的数组:类似数组的对象(array-lik...

  • ES6--正则的扩展

    RegExp构造函数 在ES5中,RegExp构造函数的参数有两种情况。 第一种情况是,参数是字符串,这时第二个参...

网友评论

      本文标题:ES6--函数扩展

      本文链接:https://www.haomeiwen.com/subject/cssosxtx.html