你能解释一下为什么这段代码会返回这个错误TypeError: this.b is not a function
:
var a = {
b: function() {
return 1;
},
c: this.b()
}
最佳答案
因为在对象a
初始化时,this
指向的是window对象,只有在构造函数中this
才会在正在创建新对象。
试试这个了解更多信息。
var a = {b: function() {return 1;}, c: this}
console.log(a.c) //output is window object
关于javascript - 在对象中使用 this 时出现 TypeError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32926426/