首页 > web前端 > js教程 > JavaScript 函数调用中括号何时起作用?

JavaScript 函数调用中括号何时起作用?

Linda Hamilton
发布: 2024-11-25 14:56:11
原创
288 人浏览过

When Do Parentheses Matter in JavaScript Function Calls?

函数声明与调用中的括号

在 JavaScript 中,函数声明和调用之间的区别出现在它们的语法中。函数声明以大括号结束,而函数调用以括号结束。

考虑以下示例:

var myFunction = function() {
  setTimeout(myFunction, 1000);
}
myFunction();
登录后复制

这里,setTimeout 函数需要一个函数引用作为参数。当您编写 myFunction 时,您正在引用该函数本身。相反,myFunction() 实际上调用了该函数。

虽然这看起来很简单,但也有例外。 setTimeout 还可以接受返回函数的函数,例如以下代码:

function myFunction() {
  return function() {
    alert("ohai");
  }
}

// or

const myFunction = () => () => alert("ohai");
登录后复制

在这种情况下,setTimeout(myFunction(), 1000) 会:

  1. 调用myFunction函数并存储其返回值。
  2. 获取myFunction函数返回。

这有效地安排了每秒显示一次警报。

因此,关键区别在于,当您省略括号时,您引用的是函数对象本身。当包含括号时,您将调用该函数。这适用于函数声明,例如 var myFunction = function() { ... } 和函数表达式,例如 const myFunction = () =>; { ... }.

以上是JavaScript 函数调用中括号何时起作用?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板