js 箭頭函式和this

2021-09-26 20:24:51 字數 1133 閱讀 5997

要討論this,就一定要與函式一起討論。

普通函式中,this所表示的意義與他所處的環境有關。環境屬於誰,this就指代誰。

觀察列印結果,你會發現this.age沒有值,列印結果是nan,表示沒有age的值不是乙個number型別,無法自增加一。

function

person()

,1000);

}var o =

newperson()

;

在obj這個物件中,obj的屬性 talk 是乙個方法,觀察列印結果,你會發現 talk 中的 this.name 列印結果是ifredom,因為talk中的this表示的是obj

// 在obj這個物件中,obj的乙個屬性talk是乙個方法,

// 在這個方法內, `this`表示的是obj 它自己.

var obj =};

obj.

talk()

;

我們將前面提到的普通函式中的定時器改為箭頭函式,觀察列印結果,你會發現this.age有值

function

person()

,1000);

}var o =

newperson()

;

我們新增乙個屬性talk2,它與talk一樣都是屬性方法,但是它的方法是乙個箭頭函式,觀察列印結果,你會發現talk2中的this.name是undefined,因為talk2中的this表示的是window

var obj =

, talk2:()

=>};

obj.

talk()

; obj.

talk2()

;

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...