第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

在異步原型函數(shù)中未定義 this

在異步原型函數(shù)中未定義 this

一只甜甜圈 2022-12-29 16:25:41
我的問題與此類似。但我想將 async 關(guān)鍵字放在原型函數(shù)中,而不是構(gòu)造函數(shù)中。“this”在原型函數(shù) saySomething 中未定義。為什么?我如何在課堂上使用異步?var Person =  function() {  console.log("CALLED PERSON")};Person.prototype.saySomething = async () => {  console.log(this);//undefined};(async function(){  var ape = new Person();  await ape.saySomething();}());
查看完整描述

1 回答

?
慕俠2389804

TA貢獻1719條經(jīng)驗 獲得超6個贊

你不應(yīng)該使用箭頭函數(shù)表達式(因為它沒有自己的綁定this),而是一個正則函數(shù)表達式

var Person =  function() {

  console.log("CALLED PERSON")

};


Person.prototype.saySomething = async function() {

  console.log(this);

};


(async function(){

  var ape = new Person();

  await ape.saySomething();

}());


或另一個使用類的示例(如@nickf 所建議的):


class Person {

  constructor() {

    console.log("CALLED PERSON")

  }

  

  async saySomething() {

    console.log(this);

  };

}


(async function(){

  var ape = new Person();

  await ape.saySomething();

}());


查看完整回答
反對 回復(fù) 2022-12-29
  • 1 回答
  • 0 關(guān)注
  • 98 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號