2

我和我的朋友就PhoneGap 进行了长时间的讨论。他说PhoneGap没有垃圾回收场景。我搜索了 Javascript 垃圾收集并找到了以下链接:

什么是 JavaScript 垃圾回收?

如何编写低垃圾实时Javascript

现在的问题是:PhoneGap 是否有垃圾收集器(或者 PhoneGap 应用程序已经像原生应用程序一样自动处理)?如果答案是肯定的,它是否类似于 javascript 垃圾收集器?

我很欣赏你的评论:)

4

1 回答 1

9

在回答之前,我想澄清一点。并非所有浏览器都有一个全局“JavaScript 垃圾收集器”,每个 JavaScript 实现都有不同的处理方法。虽然我猜大多数实现都非常相似,但垃圾收集的发生方式在 Firefox、Chrome、Safari 等之间可能会有所不同,具体取决于底层引擎。

PhoneGap 应用程序本质上是一个围绕可以呈现 HTML 和运行 JavaScript 的专用本机视图的包装器。对于 Android,这是一个基于 Android 浏览器的 WebView。对于 iOS,这是一个使用 Mobile Safari 引擎的类似设置。每个平台都有自己的代码运行方式。

结合这两点,PhongGap 不包含任何显式垃圾收集,因为它已经在底层 Web 引擎中实现。Android PhoneGap 应用程序将使用 Android 浏览器垃圾收集,iOS PhoneGap 应用程序将使用 Safari 垃圾收集等。虽然您可以合理地确定您的 PhoneGap 应用程序会进行垃圾收集,但您可能会在平台之间看到不同的结果。

于 2013-05-13T20:00:54.810 回答