H5W3
当前位置:H5W3 > 问答 > 正文

JS函数中return一个函数,如何调用这个函数,使得返回值是嵌套的函数的返回值?

代码:

function a() {
return function() {
alert(“我正在执行”);
}
}
// 点击事件
window.addEventListener(‘click’, a());

为何我这样调用函数也能执行alert代码,不应该使用a()()吗?
难道是window.addEventListener的机制影响了函数的调用吗?

回答

js是编译时执行的,window.addEventListener('click', a())这是就相当于你把function a()返回的函数提到别的作用域,而你写a()()这会在加载时调用a(),然后在调用function a()的返回值

本文地址:H5W3 » JS函数中return一个函数,如何调用这个函数,使得返回值是嵌套的函数的返回值?

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址