中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

js中的this的指向問題詳解

發布時間:2020-10-18 16:04:54 來源:腳本之家 閱讀:147 作者:你妻負我 欄目:web開發

this的指向在函數定義的時候是確定不了的,只有函數執行的時候才能確定this到底指向誰,實際上this的最終指向的是那個調用它的對象

this永遠指向的是最后調用它的對象,也就是看它執行的時候是誰調用的

普通函數中的this指向:

情況1:如果一個函數中有this,但是它沒有被上一級的對象所調用,那么this指向的就是window,這里需要說明的是在js的嚴格版中this指向的不是window,但是我們這里不探討嚴格版的問題,你想了解可以自行上網查找。

情況2:如果一個函數中有this,這個函數有被上一級的對象所調用,那么this指向的就是上一級的對象。

情況3:如果一個函數中有this,這個函數中包含多個對象,盡管這個函數是被最外層的對象所調用,this指向的也只是它上一級的對象

構造函數中的this指向:

function Fn(){
  this.title= "你好";
}
var a = new Fn();
console.log(a.title); //你好

首先new關鍵字會創建一個空的對象,然后會自動調用一個函數apply方法,將this指向這個空對象,這樣的話函數內部的this就會被這個空的對象替代。

當構造函數的this碰到return時:

如果返回值是一個對象,那么this指向的就是那個返回的對象,如果返回值不是一個對象那么this還是指向函數的實例。

如果返回值是null, null也是對象,但是在這里this還是指向那個函數的實例,因為null比較特殊。

以上就是本次介紹的全部知識點內容,感謝大家對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

札达县| 三河市| 专栏| 宁城县| 庐江县| 永济市| 马边| 墨竹工卡县| 贵州省| 响水县| 平利县| 沧州市| 临沭县| 彭水| 新田县| 尖扎县| 阳泉市| 天台县| 临湘市| 沅陵县| 息烽县| 清镇市| 天峨县| 泸州市| 南岸区| 汝城县| 巴林右旗| 新兴县| 祁东县| 衡东县| 绥芬河市| 二连浩特市| 循化| 积石山| 麻江县| 黔江区| 买车| 常宁市| 黄山市| 阿合奇县| 阳西县|