Javascript 有人能指出这是为什么(JS,.bind())

Javascript 有人能指出这是为什么(JS,.bind()),javascript,Javascript,有人能指出为什么在我打开live server网页时,下一个代码会提示我输入数字(没有.bind()的代码),而有bind的代码工作正常 让我们选择数字; 常量轮询={ 问题:“你最喜欢的编程语言是什么?”, 选项:['0:JavaScript','1:Python','2:Rust','3:C++',], //这将生成[0,0,0,0]。下一节将介绍更多信息:D 答案:新数组(4)。填充(0), registerWanSwer:函数(){ chooseNumber=prompt(`this.

有人能指出为什么在我打开live server网页时,下一个代码会提示我输入数字(没有.bind()的代码),而有bind的代码工作正常

让我们选择数字;
常量轮询={
问题:“你最喜欢的编程语言是什么?”,
选项:['0:JavaScript','1:Python','2:Rust','3:C++',],
//这将生成[0,0,0,0]。下一节将介绍更多信息:D
答案:新数组(4)。填充(0),
registerWanSwer:函数(){
chooseNumber=prompt(`this.question}\n${this.options}`);
如果(chooseNumber>=0&&chooseNumber<4){
this.answers[chooseNumber]=this.answers[chooseNumber]+1;
}
console.log(this.answers);
console.log('Munem');
},
};
文件
.querySelector(“.poll”)
.addEventListener('click',poll.registerWanswer.bind(poll))//作品
//
//文件
//.querySelector(“.poll”)
//.addEventListener('click',poll.registerWanswer());

//不工作
您正在立即调用函数,而不是将函数引用保存在侦听器中。如将
更改为.addEventListener('click',poll.registerwanswer())
更改为
。addEventListener('click',poll.registerwanswer)