亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請問在javascript中,function里this的指向是怎樣的?

請問在javascript中,function里this的指向是怎樣的?

偶然的你 2019-07-09 10:06:20
在javascript中,function里this的指向是怎樣的?
查看完整描述

4 回答

?
一只甜甜圈

TA貢獻1836條經驗 獲得超5個贊

Javascript中一個函數的this關鍵字的行為相對其它語言有些不同。在嚴格模式和非嚴格模式間也有區別。

在大多數情況下,this的值由函數如何調用來決定。this值不能在函數執行過程中賦值設置,并且每次函數調用時this值可能也不相同。ES5通過添加bind方法設置函數的this值,無論函數如何被調用。(this值永久不變)

全局上下文中:

    全局執行環境中(函數外部),無論在與不在嚴格模式下this指向全局對象。

    console.log(this.document === document); //true

    //在web瀏覽器中,window對象即是全局對象:

    console.log(this === window); // true

    this.a=37;

    console.logn(window.a); //37

    function上下文

    在函數內部,this值依賴于函數如何調用。

簡單調用:

    function f2(){

        "use strict";//使用嚴格模式

        return this;

    }

    f2() === undefined;


查看完整回答
反對 回復 2019-07-14
?
楊__羊羊

TA貢獻1943條經驗 獲得超7個贊

在js中,調用function的apply()或者call()可以覆蓋this原先的指向。但是call()和apply()的用法略有不同;
用apply()時,參數需要用Array;
JavaScript有一套完全不同于其它語言的對this的處理機制。

查看完整回答
反對 回復 2019-07-14
?
天涯盡頭無女友

TA貢獻1831條經驗 獲得超9個贊

就是函數本身的意思 比如
function demo(){
        this.width = 100;

        this.height = 200;

    return this

}
這里的意思就是本身這個函數的寬度 高度用this代替 
其實它的原型是
function demo()
{
    var p = new Object();

    p.width = 100;

    p.heighr = 200;

    return p;

}
和這種方法是一個效果


查看完整回答
反對 回復 2019-07-14
?
守著一只汪

TA貢獻1872條經驗 獲得超4個贊

這么寫就會好理解些
document.getElementById("textinput").onclick=function(){
alert(this.value);
}
這樣就好理解了,this就是指 document.getElementById("textinput")

查看完整回答
反對 回復 2019-07-14
  • 4 回答
  • 0 關注
  • 1211 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號