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

鍍金池/ 問答/HTML/ javascript里面this的問題

javascript里面this的問題

 function People(name) {
            this.name = name;
            this.sayName = function () {
                console.log('my name is:' + this.name);
            }
        }
        People.prototype.walk = function () {
            console.log(this.name + ' is walking'); 這里面this指向的是誰???
        }
        var p1 = new People('我們');
        var p2 = new People('在這里');

People.prototype.walk()不好意思,問題沒描述完全,這樣這個函數(shù)里面的this代表了什么

回答
編輯回答
紓惘
2018年5月31日 02:19
編輯回答
好難瘦

this 的指向在調(diào)用的時候才能確定,所以你加注釋的地方是確定不了的,還是符合那幾種指向方式,怎么調(diào)用 walk,就怎么指,這個調(diào)用方式和 this 指向關(guān)系你可以去搜 this指向。

2018年3月1日 06:01
編輯回答
挽歌

打印一下就知道了

People.prototype.walk = function ()
{
    console.log(this);
}
2017年12月18日 07:55
編輯回答
厭遇
function People(name) {
    this.name = name;
    this.sayName = function () {
        console.log('my name is:' + this.name);
    }
}
People.prototype.walk = function () {
    console.log(this.name + ' is walking'); 
}
var p1 = new People('我們');
p1.sayName()
p1.walk();

//my name is:我們
//我們 is walking

1、普通函數(shù)this指向問題:sayName()可以理解為閉包,內(nèi)部函數(shù)可以訪問外部的變量,this指向外部的name
2、基于原型鏈this指向問題: walk()函數(shù)是基于people原型鏈行的繼承,walk()繼承了所有父類的屬性所以這里的this還是指向父類的name
3、基于箭頭函數(shù)this的指向問題: this指向箭頭函數(shù)上一級
總結(jié):this的指向十分的復(fù)雜,應(yīng)該根據(jù)函數(shù)被調(diào)用的方法來考慮具體的指向性問題。你不知道的javascript中有具體關(guān)于this的指向和作用域的理解,希望對你有幫助

2017年3月21日 23:41