jQuery 似乎无法知道您的应用何时使用 promise 完成。由于内存是在 js 中管理的,因此我认为 promise 会继续存在,直到对它的所有引用都消失为止。具体来说,它将无限期存在,直到它被解析并且创建或使用它的代码已经完成退出(函数返回等)。届时它将被垃圾收集。
任何人都可以验证我的假设吗?或者对此添加其他想法?
了解底层机制有一些重要的含义;内存泄漏、潜在的缓存机会(通过在它们被解决后持久化 promise )等。我的下一步是深入研究 jQuery 源代码,但我希望在开始之前获得一些额外的指导。
最佳答案
如果没有对已解决 promise 的引用,它将(最终)被处置。否则,它将保存在内存中以防任何人想要访问它的值。
在这种情况下,这里的 Promises 与任何其他对象没有什么不同。
关于javascript - jQuery promise 在使用完毕后会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22972210/