gpt4 book ai didi

javascript - 异步编程的新手。如何让不同对象按正确顺序发生事情?

转载 作者:行者123 更新时间:2023-11-30 07:41:18 25 4
gpt4 key购买 nike

我正在尝试重构我的程序。我通过使 AJAX 调用同步来使其工作,但现在我想以正确的方式进行。发生的事情是 headline 被实例化为来自 headlines 的新标题,其中包含标题列表。 headlines.getRandom() 从现有列表中随机选择一个标题,但是,如果列表为空,它会调用 AJAX 来获取更多标题。

我无法完全理解如何使 Headline 对象构造函数等待调用完成而不使两个对象相互依赖。就目前而言,标题无法实例化,因为它试图从 undefined object 实例化,因为调用尚未成功完成。

我知道回调,但我如何使用回调使一个对象等待另一个对象的 AJAX 调用成功,而不会陷入大量对象乱伦?

headline = new Headline(headlines.getRandom(true));
fillHeadline();

如果您想查看更多内容,请查看上下文中的代码。 https://github.com/raddevon/onion-or-not/blob/true-ajax/js/js.js#L104

最佳答案

因为您使用的是 jQuery,所以我会研究 jQuery promises。您可以在 http://net.tutsplus.com/tutorials/javascript-ajax/wrangle-async-tasks-with-jquery-promises/ 找到不错的介绍。和 http://eng.wealthfront.com/2012/12/jquerydeferred-is-most-important-client.html .

关于javascript - 异步编程的新手。如何让不同对象按正确顺序发生事情?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16678442/

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