首页 > web前端 > js教程 > 如何使用 jQuery 的 $.when() 有效处理延迟对象数组?

如何使用 jQuery 的 $.when() 有效处理延迟对象数组?

Mary-Kate Olsen
发布: 2024-12-19 10:15:14
原创
350 人浏览过

How Can I Effectively Handle Arrays of Deferred Objects with jQuery's $.when()?

理解 $.when() 中的延迟数组处理

在类似于提供的 JSFiddle 中演示的场景中,一组生成延迟任务并将其传递给 $.when()。然而, $.when() 默认情况下需要单独的延迟对象作为参数,并且可能无法有效地处理数组。

利用 Function.prototype.apply

要解决这个问题,您可以使用 Function.prototype.apply 将延迟数组作为单独的参数传递。这可以通过以下语法来实现:

$.when.apply($, my_array).then( ___ );
登录后复制

此方法会将数组扩展为逗号分隔的各个延迟列表,允许 $.when() 正确处理它们。

使用 ES6 Spread 运算符

或者,如果您使用的是 ES6 或更高版本,您可以使用扩展运算符 (...) 更简洁地实现相同的效果:

$.when(...my_array).then( ___ );
登录后复制

在 .then() 处理程序中处理动态参数计数

由于 .then() 处理程序所需的参数数量事先未知,因此建议处理参数数组以提取每个 Promise 的结果。这可以在处理函数本身内完成。

以上是如何使用 jQuery 的 $.when() 有效处理延迟对象数组?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板