javascript - 在同一个函数中使用函数名会导致无限循环吗?

标签 javascript

最近,我们的老师给我们做了一个关于 JavaScript 的测验。我在编程方面比较先进,所以当我遇到一个问题时:

Using the name of a function within that same function will result in an infinite loop?

由于递归,我回答错误。根据我的理解,您必须使用函数的名称才能调用它,因此递归会使这并不总是正确的。

我的理解是否正确,还是措辞不同?

最佳答案

这将导致无限递归“循环”(堆栈溢出):

function callMe() {
    callMe();
}

而这不会导致无限循环:

function callMe() {
    if (false) {
        callMe();
    }
}

但是这两个代码片段都有一个“使用”该函数名称的函数(以使用您问题的措辞)。

所以,声明:

Using the name of a function within that same function will result in an infinite loop?

实际上取决于被调用函数内部的逻辑(条件语句等)。

关于javascript - 在同一个函数中使用函数名会导致无限循环吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35512310/

相关文章:

javascript - 是否可以从应用程序控制 iTunes(使其播放暂停的歌曲)?

javascript - 用于在 cypress 中选择复选框的自定义命令

javascript - 溢出-y :hidden IOS issue with inner scrolling div

javascript - javascript 我需要帮助来解决问题

javascript - selectionStart-End with textareas

javascript - 产品点击 Odoo PoS 功能

javascript - 当 div 改变大小时,如何修复 div 内图像的布局?

javascript - 如何在 Ionic 应用程序的 Chrome 远程调试中隐藏内容(API key 等)?

javascript - CSS,jQuery - 延迟失去最小高度的焦点

javascript - 简单的 JS 正则表达式替换。