将参数传递给匿名函数 Javascript
passing parameters to anonymous functions 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 流向 B,如果A 发送一个参数,B 接受一个参数。
这里,正在发送的部分信息在点击回调中被初始化:
btn.addEventListener("click",function(e){
firstFunction(e, "Elon");
});
点击事件e
由浏览器初始化并发送给回调。但是 "Elon"
字符串是在回调中创建的。最后,回调 firstFunction(e, "Elon")
将两条信息传递给 firstFunction
或 B 块。
因为传递的额外信息是在点击回调内部创建的,而不是由点击回调的调用者创建的,所以点击回调只接受一个参数,即事件。
我不明白为什么你不需要将参数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 流向 B,如果A 发送一个参数,B 接受一个参数。
这里,正在发送的部分信息在点击回调中被初始化:
btn.addEventListener("click",function(e){
firstFunction(e, "Elon");
});
点击事件e
由浏览器初始化并发送给回调。但是 "Elon"
字符串是在回调中创建的。最后,回调 firstFunction(e, "Elon")
将两条信息传递给 firstFunction
或 B 块。
因为传递的额外信息是在点击回调内部创建的,而不是由点击回调的调用者创建的,所以点击回调只接受一个参数,即事件。