当前位置: 首页 > 面试题库 >

什么是关闭和回调?

濮佑运
2023-03-14
问题内容

什么是JavaScript中的闭包和回调?我还没有找到很好的解释。


问题答案:

回调 是一个更简单的概念。回调基本上是一个函数接受另一个函数作为参数的地方。在执行过程中的某个时刻,被调用函数将执行作为参数传递的函数,这是一个回调。回调实际上经常是作为异步事件发生的,在这种情况下,被调用的函数可能会在未执行回调的情况下返回,这可能会在以后发生。这是一个常见的示例(基于浏览器):

 function fn() { alert("Hello, World"); }
 window.setTimeout(fn, 5000);

在这里,该函数fn作为 回调传递 给该setTimeout函数。设置超时立即返回,但是5秒钟后执行了作为 回调 传递的函数。

闭包和回调

经常创建闭包(偶然,偶然或故意)的原因是需要创建回调。例如:

 function AlertThisLater(message, timeout)
 {
     function fn() { alert(message); }
     window.setTimeout(fn, timeout);
 }

 AlertThisLater("Hello, World!", 5000);

(请阅读一些链接文章以了解关闭情况)

创建了一个包含部分message参数的闭包,该闭包fn在调用AlertThisLater返回后的相当一段时间内执行,但fn仍然可以访问的原始内容message



 类似资料:
  • 问题内容: 我没有完全了解Node.js的全部含义。也许是因为我主要是基于Web的业务应用程序开发人员。它是什么,有什么用? 到目前为止,我的理解是: 编程模型是事件驱动的,尤其是它处理I / O的方式。 它使用JavaScript,解析器为V8。 它可以轻松用于创建并发服务器应用程序。 我的理解正确吗?如果是,那么事件I / O的好处是什么,并发性东西还有更多好处吗?另外,Node.js的发展方

  • JavaSocket API告诉我,关闭一个套接字也会关闭套接字的和。 Socket API Javadoc和Input/OutputStream API info都没有定义(我还没有找到它)对于或来说,“关机”到底意味着什么,但我一直假设关闭会使它们进入“关机”状态。 然而,在我成功调用客户端套接字的方法(调用返回)之后,如果我调用该套接字的或方法,结果是。 我确信在调用套接字的时,两个流都没有

  • 编辑问题以包括所需的行为、特定问题或错误,以及再现问题所需的最短代码。这将帮助其他人回答这个问题。 我在测试中有一个问题,但我不知道答案:( 多态性是什么? 1-它是一个类,其操作也可以应用于其他类的值2-它为不同类型的实体提供多个接口3-它将数据和函数打包到一个组件中4-它是一种代码重用机制,并允许通过公共类和接口对原始软件进行独立扩展

  • 问题内容: 按照目前的情况,这个问题不适合我们的问答形式。我们希望答案能得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 9年前关闭。 在这个问题中,有什么方法可以只接受JTextField中的数值吗?答案之一表明JFormattedTextField存在问题。 我还没有使用过它,但是有人可以

  • 在javascript中,我们可以用{}初始化变量。“{}”是什么意思?