在javascript中,我们有addEventlister,它侦听一个偶数并调用一个称为侦听器函数的函数。如果在事件被触发的情况下不使用函数来增加“ let变量”的值,是否可以使用另一种方法?
代替此
let clickVar = 0;
x.addEventListener("click", RespondClick);
function RespondClick() {
clickVar++;
}
示例备用实施
x.addEventListner(click);
if (event == true){ clickVar++; }
======编辑======
回复评论
我读得越多,看起来就越像是XY问题-您还想解决其他问题吗?
在我看来,第二种方法更直观。即,除非绝对必要,否则为什么要创建函数。
回复评论
第二种方法没有逻辑。您编写的代码将执行一次。如果要多次运行代码,则必须调用一个函数。为了在事件发生时运行功能,您需要一个事件侦听器。
此简单的修改应解决一次性呼叫问题。
x.addEventListner(click);
if (event == true){ clickVar++; event=false; }
但是我要表达的观点是可以避免使用函数,代码可以很容易讲,而不仅仅是编写。
答案 0 :(得分:1)
您的第二个样本不起作用。这根本不是事件侦听器的工作方式。您必须使用回调函数。如果您认为第一个示例过于冗长,可以使用匿名函数:
let clickVar = 0;
x.addEventListener("click", function() {
clickVar++;
});
或者在更现代的Java版本中使用箭头功能
x.addEventListener("click", () => {
clickVar++;
});