首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Node.js:如果声明为fat箭头,则函数“未定义”

Node.js:如果声明为fat箭头,则函数“未定义”
EN

Stack Overflow用户
提问于 2018-06-02 08:05:30
回答 2查看 160关注 0票数 0

我试图在闭包中编写递归。递归部分位于函数中。下面是模式:

代码语言:javascript
运行
复制
if (whatever) {
  doStuff: (x) => {
     if (x<10) doStuff(x+1);
  }

  doStuff(0);
}

它不起作用:doStuff is not defined.,但这是可行的:

代码语言:javascript
运行
复制
if (whatever) {
  function doStuff(x) {
     if (x<10) doStuff(x+1);
  }

  doStuff(0);
}

我尝试过以许多方式声明函数,但是如果它被声明为箭头函数,它就永远不会起作用。我想知道为什么?

EN

Stack Overflow用户

发布于 2018-06-02 08:15:13

使用的方法并不是定义函数的正确方法。只需将:替换为=,并用任何真实值初始化--任何变量。

下面是您修改的代码。

代码语言:javascript
运行
复制
 var whatever = true

 if (whatever) {
    var doStuff = (x) => {
         if (x<10) 
             return x + doStuff(x+1);
         return x
    }
    console.log(doStuff(0)) // 55
 }
票数 -1
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50654826

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档