原文:箭頭函數中的this和普通函數中的this對比

ES 中新增了箭頭函數這種語法,箭頭函數以其簡潔性和方便獲取this的特性。下面來總結一下他們之間的區別: 普通函數下的this: 在普通函數中的this總是代表它的直接調用者,在默認情況下,this指的是window, 在嚴格模式下,沒有直接調用者的函數中的this是 undefined使用 call,apply,bind ES 新增 綁定的,this指的是 綁定的對象 箭頭函數中的this: ...

2018-04-20 10:47 1 7227 推薦指數:

查看詳情

普通函數箭頭函數this的指向問題

箭頭函數普通函數的區別如下。 普通函數:根據調用我的人(誰調用我,我的this就指向誰) 箭頭函數:根據所在的環境(我再哪個環境,this就指向誰) 一針見血式總結: 普通函數的this: 1. this總是代表它的直接調用者(js的this是執行上下文), 例如 obj.func ...

Wed Oct 31 01:00:00 CST 2018 0 5736
JavaScript普通函數箭頭函數

最近被問到了一個問題: javaScript 箭頭函數 ( => ) 和普通函數 ( function ) 有什么區別? 我當時想的就是:這個問題很簡單啊~(flag),然后做出了錯誤的回答…… 箭頭函數的 this 和調用時的上下文無關,而是取決於定義時的上下文 ...

Tue Mar 21 04:22:00 CST 2017 0 2909
jsthis,箭頭函數普通函數

四種基本用法 1. 一般方法,this代指全局對象 window 2. 作為對象方法調用,this代指當前對象 3. 作為構造函數調用,this 指代new 出的對象 4. 調用方法的apply和call方法,可以改變函數的調用對象/作用域 (this)用法 ...

Sun Sep 23 18:30:00 CST 2018 0 3962
圖解-JS普通函數箭頭函數this的指向問題

Vue: 不要在選項 property 或回調上使用箭頭函數,比如 created: () => console.log(this.a) 或 vm.$watch('a', newValue => this.myMethod())。因為箭頭函數並沒有 this,this 會作為變量一直 ...

Sat May 23 01:10:00 CST 2020 0 1464
ES6中箭頭函數普通函數this的區別(轉)

看到一篇別人的博客,對this的理解又加深了一些。 普通函數的this: 1. this總是代表它的直接調用者, 例如 obj.func ,那么func的this就是obj 2.在默認情況(非嚴格模式下,未使用 'use strict'),沒找到直接調用者,則this指的是 window ...

Wed Feb 28 18:24:00 CST 2018 0 3556
ES6箭頭函數普通函數有什么區別?

1、普通函數的this總是指向調用它的那個對象, 箭頭函數沒有自己的this,他的this永遠指向其定義環境,任何方法都改變不了其指向,如call()、bind()、apply()。(正是因為它沒有this,所以也就不能用作構造函數,也沒有原型對象) 2、箭頭函數不能當作構造函數 ...

Fri Dec 14 17:32:00 CST 2018 0 4087
ES6中箭頭函數普通函數this的區別

普通函數的this: 1. this總是代表它的直接調用者, 例如 obj.func ,那么func的this就是obj 2.在默認情況(非嚴格模式下,未使用 'use strict'),沒找到直接調用者,則this指的是 window 3.在嚴格模式下,沒有直接調用者的函數 ...

Sat Jun 10 19:02:00 CST 2017 1 16384
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM