最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

函数声明和函数表达式可以互换使用吗? [重复]

运维笔记admin14浏览0评论

函数声明和函数表达式可以互换使用吗? [重复]

函数声明和函数表达式可以互换使用吗? [重复]

这个问题在这里已有答案:

  • var functionName = function() {} vs function functionName() {} 37回答
回答如下:

他们都有自己的用例。函数声明是hoisted到脚本的顶部,可以在定义出现之前调用,而函数表达式只能在声明后调用。

sayHello1(); // Won't work since variable expression is created after call
sayHello2(); // Will work since function declarations are hoisted

var sayHello1 = function() {
  console.log("Hello World!");
}

function sayHello2() {
  console.log("Hello World!");
}

命名函数表达式对递归调用很有用:

var sayHello1 = function sayHelloFunc() {
  if (/* something */) {
    sayHelloFunc()
  }
}
发布评论

评论列表(0)

  1. 暂无评论