关键字,它指向对象,调用函数。为什么console.log(this)不返回控制台对象?

问题描述 投票:0回答:1

嗨,堆栈溢出的人。我是这里的新手,我想尝试我的第一个问题,这只是出于学习目的。现在,我正在用JavaScript中的关键字this的概念进行思考。我不希望在这里的人向我解释“这个”的完整概念,我只会以其他人学习它的方式来做:Google,MDN,YouTube,VSCode和Chrome开发者工具。

我只是想知道什么,我找不到任何引用:

“ this”似乎总是引用作为方法调用对象的对象,其中包含关键字“ this”。

let testObject = {};
testObject.name = "Dennis";
testObject.sayName = function() {
   console.log("Hi, I\'m "+this.name);
}

testObject.sayName();               //prints: "Hi I'm Dennis", so this=testObject.
console.log("Hi, I\'m "+ this)      //prints: "Hi, I'm [object Window]" so this=Window

也许有些人知道为什么console.log(this)不能简单地打印控制台对象?因为.log()只是控制台对象的方法,对吧?这有任何意义吗? :D

非常感谢!

javascript this
1个回答
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.