在router.js写箭头函数_javascript-ES6函数进阶(箭头函数,默认参数)(笔记)

在router.js写箭头函数_javascript-ES6函数进阶(箭头函数,默认参数)(笔记)_第1张图片

1.箭头函数

1.1 箭头函数,一行时,不用{}

// 箭头函数,一行时,不用{}
var t = ()=>console.log('t');
t()

1.2 传一个参数,可以省略()

// 传一个参数,可以省略()
var t1 = x=>console.log(x)
t1('t1')

1.3 传多个值,正常完整的写一个函数

// 传多个值,正常完整的写一个函数
var t2 = (x,y)=>{
    return x+y
}
console.log(t2(1,2));

1.3 传多个值,正常完整的写一个函数

// 返回为对象时,需要用()包裹,这个可以了解下es6中的js解构
var add =(a,b) => ({num:a+b});
console.log(add(10,10));

1.4 函数设置默认参数,在es5中,函数设置默认参数比较麻烦。

// 函数设置默认参数,在es5中,函数设置默认参数比较麻烦。
var t3 = (x=5,y=6)=>x+y;
console.log(t3())

1.5 es5中this是确定的,是一个对象。

// es5中this是确定的,是一个对象。
function t4(){
    console.log(this)
}

1.6 箭头函数中的this是定义时的所在作用域的this,有点像python中的self

//箭头函数中的this是定义时的所在作用域的this,有点像python中的self,
var t5 = ()=>console.log(this)
t4();
t5();

1.7 用用上次的rest符号,就是...

// 用用上次的rest符号,就是...
var t6 = (first,...more)=>{
    console.log(first,more)
}
t6(1,2,3,4,5)
t6(1,...[2,3,4,5])

完整代码

// 箭头函数,一行时,不用{}
var t = ()=>console.log('t');
t()
// 传一个参数,可以省略()
var t1 = x=>console.log(x)
t1('t1')
// 传多个值,正常完整的写一个函数
var t2 = (x,y)=>{
    return x+y
}
console.log(t2(1,2));
// 返回为对象时,需要用()包裹,这个可以了解下es6中的js解构
var add =(a,b) => ({num:a+b});
console.log(add(10,10));

// 函数设置默认值,在es5中,函数设置默认参数比较麻烦。
var t3 = (x=5,y=6)=>x+y;
console.log(t3())

// es5中this是确定的,是一个对象。
function t4(){
    console.log(this)
}
//箭头函数中的this是定义时的所在作用域的this,有点像python中的self,
var t5 = ()=>console.log(this)
t4();
t5();

// 用用上次的rest符号,就是...
var t6 = (first,...more)=>{
    console.log(first,more)
}
t6(1,2,3,4,5)
t6(1,...[2,3,4,5])

你可能感兴趣的:(在router.js写箭头函数)