1. 程式人生 > 其它 >在router.js寫箭頭函式_javascript-ES6函式進階(箭頭函式,預設引數)(筆記)

在router.js寫箭頭函式_javascript-ES6函式進階(箭頭函式,預設引數)(筆記)

技術標籤:在router.js寫箭頭函式

e65f451479885c3037ed2df9b34b22c3.png

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])