鍍金池/ 問答/HTML/ node this 問題

node this 問題

module.exports = class A{
    static async bb(){
       # console.log(this) =>undefined.無法調(diào)用。
        await this.bb()
    } 
   static async bb(){
    //忽略代碼
    }

}

我在另外文件

#koa-router koa2
router.post('/',A.bb)  

node 7.10
在同一個類中的一個靜態(tài)方法調(diào)用另一個靜態(tài)方法,可以使用 this 關(guān)鍵字。
怎么是this值怎么是undefined

回答
編輯回答
幼梔
2018年8月1日 23:25
編輯回答
命多硬

JavaScript 中的函數(shù)分為:定義時上下文運行時上下文。

而 JavaScript 的函數(shù)調(diào)用時,this 永遠都是指向運行時上下文。

module.exports = class A ... 此處有一個賦值的過程,函數(shù)的運行上下文改變了。

2017年10月12日 14:18
編輯回答
墨染殤

箭頭函數(shù)綁定

module.exports = class A{
    static bb = async () => {
        await this.bb()
    } 
}
2017年8月18日 10:54
編輯回答
生性

靜態(tài)方法調(diào)用this?

2017年3月17日 12:44