在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML5  HTML/ react-native里關于this的一個問題

react-native里關于this的一個問題

clipboard.png

為了方便截圖,我把多余的代碼省掉了
初學react-native,問題如下:

我知道圖中畫圈的這兩個this都是指向的LoginForm實例,但是為什么要加這個this呢?

function foo1(){
    console.log('sssss');
}

function foo2(){
    this.foo1();
}

foo2();

---------------

function foo1(){
    console.log('sssss');
}

function foo2(){
    foo1();
}

foo2();

就像上面兩端代碼一樣,無論加不加this都沒有影響函數(shù)的調(diào)用。
所以我覺得不用加this,render()函數(shù)都可以在里面調(diào)用renderButton()函數(shù)????

回答
編輯回答
夢一場
當一個對象調(diào)用靜態(tài)或原型方法時,如果該對象沒有“this”值(或“this”作為布爾,字符串,數(shù)字,未定義或null)
,那么“this”值在被調(diào)用的函數(shù)內(nèi)部將為
undefined。不會發(fā)生自動包裝。即使我們以非嚴格模式編寫代碼,它的行為也是一樣的,因為所有的函數(shù)、方法、構造函數(shù)、getters或setters都在嚴格模式下執(zhí)行。因此如果我們沒有指定this的值,this值將為undefined。

class 內(nèi)部的所有方法都是默認的嚴格模式,默認的this不是window(不存在class的時候),而是undefined,所以必須要手動制定this,手動綁定。

2018年8月27日 18:31
編輯回答
神經(jīng)質(zhì)

因為這是在一個 class 里,不加 this 調(diào)不到
下面那段代碼則不是

2017年1月9日 20:59