`this`在类方法中的匿名函数中未定义

时间:2018-08-20 12:50:47

标签: javascript

请考虑以下代码段:

function Animal() {

}

Animal.prototype.run = function() {
    (function() {
        console.log(this);
    })();
}

var g = new Animal();
g.run();

它记录Window,这很有意义,但是在下一段中,它输出undefined !!!:

class Animal {
    run() {

        (function() {
            console.log(this);
        })();

    }
}

var g = new Animal();
g.run();

这是相同的代码,但使用类语法,使得this等于undefined的类语法有什么不同?

0 个答案:

没有答案