js 箭頭函式

2022-08-02 11:48:12 字數 1906 閱讀 9379

(引數1, 引數2, …, 引數n) =>

(引數1, 引數2, …, 引數n) =>表示式(單一)

//相當於:(引數1, 引數2, …, 引數n) =>

//當只有乙個引數時,圓括號是可選的:

(單一引數) =>

單一引數 =>

//沒有引數的函式應該寫成一對圓括號。

() =>

//

加括號的函式體返回物件字面表示式:

引數=>()

//支援剩餘引數和預設引數

(引數1, 引數2, ...rest) =>

(引數1 = 預設值1,引數2, …, 引數n = 預設值n) =>

//同樣支援引數列表解構

let f = ([a, b] = [1, 2], = ) => a + b +c;

f(); //6

1. 具有乙個引數的簡單函式

var single = a =>a

single('hello, world') //

'hello, world'

2. 沒有引數的需要用在箭頭前加上小括號

var log = () =>

3. 多個引數需要用到小括號,引數間逗號間隔,例如兩個數字相加

var add = (a, b) => a +b

add(3, 8) //

11

4. 函式體多條語句需要用到大括號

var add = (a, b) => 

else

}

5. 返回物件時需要用小括號包起來,因為大括號被占用解釋為**塊了

var gethash = arr =>)

}

6. 直接作為事件handler

document.addeventlistener('click', ev =>)

7. 作為陣列排序**

var arr = [1, 9 , 2, 4, 3, 8].sort((a, b) => 

else

})arr

//[1, 2, 3, 4, 8, 9]

1. typeof運算子和普通的function一樣

var func = a =>a

console.log(

typeof func); //

"function"

2. instanceof也返回true,表明也是function的例項

console.log(func instanceof function); //

true

3. this固定,不再善變

obj =

//非箭頭函式

= function(ev) }}

obj.init()

4. 箭頭函式不能用new

var person = (name, age) =>

var p = new person('john', 33) //

error

5. 不能使用argument

var func = () =>

func(55) //

uncaught referenceerror: arguments is not defined

mdn箭頭函式

es6箭頭函式(arrow functions)

js es6中的箭頭函式(arrow functions)使用

js箭頭函式

let func1 console.log func1 箭頭函式 入參為乙個時候可以省略括號 出值為乙個的時候可以省略 letfu2 x x x 函式體內的this物件,就是定義時所在的物件,而不是使用時所在的物件。this物件的指向是可變的,但是在箭頭函式中,它是固定的。var id 21 fun...

js箭頭函式

箭頭函式表示式的語法比函式表示式更簡潔,並且沒有自己的this,arguments,super或new.target。箭頭函式表示式更適用於那些本來需要匿名函式的地方,並且它不能用作建構函式。1 基礎語法 param1,param2,paramn param1,param2,paramn expre...

js 箭頭函式

箭頭函式的使用,我們在做vue或者angular專案的時候,定義的函式,很多時候會有作用域的問題,特別是在進行非同步請求的時候,就必須使用到箭頭函式 最簡單的箭頭函式 function change res 相當於 function change res 非同步請求使用箭頭函式 this.axios...