// 箭頭函式中的this指向
// 如果是箭頭函式,this指向是,父級程式的,this的指向
// 如果父級程式是乙個函式,函式也是有this的,那麼箭頭函式的this,就是父級函式的this
// 如果父級程式不是函式,例如物件,陣列等,沒有this指向,箭頭函式的this指向是window頂級物件
// function宣告的,物件中的函式
// this執行應該是,obj物件本身
// const obj =
// }
// 物件中的函式,但是是使用 箭頭函式宣告的
// 這個物件中的箭頭函式,this指向是 window
const obj =
f();}}
// obj.fun();
// obj,中,定義了子級箭頭函式fun2
// 箭頭函式fun2,this指向應該是父級程式的this指向
// 箭頭函式fun2,父級程式是,obj
// obj是個物件,沒有this指向的
// fun2的this指向,是window
// const obj2 =
// }
// 陣列中子級箭頭函式,this指向是父級程式陣列的this指向
// 陣列是沒有this指向的,指向的是window
// const arr = [()=>];
// arr[0]();
// 如果匿名函式都寫成箭頭函式語法,this指向是什麼
// function fun(){} 宣告式定義函式,不是匿名函式,不能寫成箭頭函式形式
// 匿名函式本身this指向已經是 window,寫成箭頭函式,this指向仍然你是window
// var fun = ()=>
// 定時器,延時器,函式寫成箭頭函式,this指向仍然是 window
// setinterval( ()=> ,1000 );
// settimeout( ()=> ,1000 );
// 事件繫結,匿名函式,this指向,也是window
// document.addeventlistener( 'click' , ()=> );
// 總結:
// 箭頭函式的this指向,是 父級程式的 this指向
// 如果父級沒有this指向,結果是 window
// 如果之前this指向就是window,箭頭函式父級沒有程式,this指向是window
// 如果原本this指向是window的箭頭函式,如果被父級程式巢狀,也會改變this指向的
const obj1 = )}}
obj1.fun();
箭頭函式中this的指向
箭頭函式中this的指向 在箭頭函式中沒有this,箭頭函式中的this是它捕獲過來的,注意 1.箭頭函式中的this一旦捕獲將無法在改變 2.箭頭函式是在它被宣告時開始捕獲的 3.什麼是宣告時呢?就是箭頭函式被呼叫時 4.捕獲的是離它最近的父級的this的指向 舉個栗子 var a 測試 let ...
箭頭函式中的this指向
let a a.bar undefinedbar函式中的this指向父作用域,而a物件沒有作用域,因此this不是a,列印結果為undefined function a a.prototype.bar console.log this.foo let a new a a.bar undefined原...
箭頭函式中的this指向
箭頭函式是es6新出的一種函式格式的寫法 文件對箭頭函式的解釋 箭頭函式相當於匿名函式,並且簡化了函式定義。箭頭函式有兩種格式,一種只包含乙個表示式,連和return都省略掉了。還有一種可以包含多條語句,這時候就不能省略和return 比如我們常見的foreach方法 var arr 1 2,3 4...