如何解决将参数传递给匿名函数 Javascript
我不明白为什么您不需要将参数 name
传递给 addEventListener
中的匿名函数。为什么您需要通过 e
而不是 name
。
我的意思是该行末尾的第 6 行,function(e)
let btn = document.querySelector(".test-btn");
function firstFunction(e,name){
e.preventDefault();
btn.innerHTML = name;
}
btn.addEventListener("click",function(e){
firstFunction(e,"Elon");
});
解决方法
函数参数允许某个位置的块,比如块 A,将信息发送到其他位置的功能块,比如块 B。当您传递参数时,如果 A 发送信息,则信息可以从 A 流向 B一个参数,B 接受一个参数。
这里,发送的部分信息在点击回调中初始化:
btn.addEventListener("click",function(e){
firstFunction(e,"Elon");
});
e
,点击事件,由浏览器初始化并发送到回调。但是随后在回调中创建了 "Elon"
字符串。最后,回调执行 firstFunction(e,"Elon")
将两条信息传递给 firstFunction
或 B 块。
因为传递的额外信息是在点击回调内部创建的,而不是由点击回调的调用者创建的,所以点击回调只接受一个参数,即事件。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。