The 文档jQuery.when() 表示该函数采用 Deferreds。然而,它后来也说:
如果将单个参数传递给 jQuery.when() 并且它不是 Deferred 或 Promise...
这似乎意味着它也可以接受 Promise。但 Promise 不是 Deferreds——它们有 Deferred 方法的子集。我想你可能会说 Deferred 是 Promise,但 Promise 不是 Deferred。
问题:
- $.when() 可以接受 Promise 或 Deferreds 吗?这在我的测试中似乎有效。
- 文档中有错误吗?我认为应该说 $.when() 接受 Promises,而不仅仅是 Deferreds。
该文档试图传达的是$.when()
将接受一个既不是jQuery.Deferred()
, a jQuery.promise()
nor a Promise
;该值将被视为已解决jQuery.Deferred()
,这在句子的下一部分中描述
如果将单个参数传递给jQuery.when()
它不是一个
Deferred 或 Promise,它将被视为已解决的 Deferred 和
附加的任何完成回调将立即执行。
例如
$.when(1).then(function(data) {
alert(data)
})
<script src="https://code.jquery.com/jquery-git.js">
</script>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)