gpt4 book ai didi

coffeescript - IcedCoffeeScript 或 jQuery 延迟

转载 作者:行者123 更新时间:2023-12-03 21:05:51 25 4
gpt4 key购买 nike

最近在处理 Backbone.JS/jQuery/CoffeeScript 项目时,我发现自己陷入了一堆回调和计时问题。我需要等待一些事情完成才能继续,发现自己陷入了一堆嵌套的回调......这令人困惑且难以调试。然后我找到了 2 个可能的解决方案 jQuery deferredIcedCoffeeScript
IcedCoffeeScript看起来很简单,只需添加 await & defer .但是,我想知道它是否会留在那里? StackOverflow 上只有 2 个问题?与 CoffeeScript 相比,没有太多谈论它

另一件事是这两种方法之间的区别是什么,它们似乎做的事情大多相同?除了在 IcedCoffeeScript 中,它看起来更像是程序代码,而在 jQuery deferred 中,它并没有解决我的回调问题

最佳答案

这些是非常不同的技术:

  • IcedCoffeeScript 是一个用 await 扩展 CoffeeScript 的预编译器和 defer为您转换代码的关键字,以便您可以以同步方式编写代码。在生成的 JavaScript 中,awaitdefer产生嵌套函数。
  • jQuery 延迟 (又名 Promises )是一种完全回避回调的方式:异步函数可以返回一个 Promise,而不是接受回调。然后将回调附加到 Promise。这是一种简单但功能强大的技术。我在书中专门写了一章,Async JavaScript .

  • 这些技术中的每一种都与特定类型的 API 配合使用效果最佳。 awaitdefer期望函数将单个回调作为其最后一个参数。当您的应用程序中有许多其他 Promise 时,Promise 效果最佳。

    处理 JavaScript 中的异步行为没有 Elixir 。您需要了解回调、 promise 和 PubSub(又名 EventEmitter s)并为每个工作选择最佳工具。即使您使用 IcedCoffeeScript(这很酷),有时 Promise 仍会为您节省大量工作。

    我希望这有帮助。看看我的书, Async JavaScript ,了解更多信息。

    关于coffeescript - IcedCoffeeScript 或 jQuery 延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11381393/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com