Javascript this.add1不是一个函数

Javascript this.add1不是一个函数,javascript,function,this,Javascript,Function,This,为什么我们不能把它绑在这里 函数UserCreator(名称、分数){ this.name=名称; 这个分数=分数; } UserCreator.prototype.increment=函数(){ 函数add1(){ 这个是.score++; } this.add1() }; UserCreator.prototype.login=函数(){ console.log(“登录”); }; const user1=新用户创建者(“Eva”,9) user1.increment()因此本质上它运行的

为什么我们不能把它绑在这里

函数UserCreator(名称、分数){
this.name=名称;
这个分数=分数;
}
UserCreator.prototype.increment=函数(){
函数add1(){
这个是.score++;
}
this.add1()
};
UserCreator.prototype.login=函数(){
console.log(“登录”);
};
const user1=新用户创建者(“Eva”,9)

user1.increment()
因此本质上它运行的是
window.add1()
,如果使用add1()调用它,它将运行
window.score++
返回一个NaN。需要研究我的“这个”概念

你能分享一下你想要达到的目标吗?:)你的代码也是一团糟。你需要正确地意愿它,它会更容易理解。如果你能提供一个现场演示,也会有所帮助。Stackoverflow问题编辑器有一个用于制作实时演示的按钮,其中包括一个自动修复缩进的功能。使用它。为什么你是一个直接被调用的函数中的函数?只需添加
this.score++UserCreator.prototype.increment
函数中使用其他函数进行编码>。如果该代码处于严格模式,则错误为
这是未定义的
。。。沿着这些路线anyway@Bravo我不能投票支持dupe,但我相信这是您正在引用的dupe。此时,您正在调用
this.add1()
this
!==<代码>窗口
。我建议您使用
console.log()
和/或调试器来探索正在发生的事情。