【问题标题】:Javascript in chrome addon: do they support weak references?chrome插件中的Javascript:它们支持弱引用吗?
【发布时间】:2016-06-23 22:08:22
【问题描述】:

我编写了一个 JavaScript,您可以在其中创建某种对象。为了便于开发,我还创建了一个 Web 前端,可以在其中列出所有对象(以及排序、分组等)。因此,这个前端需要一个所有对象的列表。

不幸的是,JavaScript 不支持弱引用(只有 WeakMap 和 WeakRef,但没有真正的弱引用),所以通过保留这个列表,不再对任何对象进行垃圾回收。 所以我无法向开发者展示当前使用了哪些对象。

现在,我想在插件中提供这个工具(比如 React 工具栏)。 是否可以在此特权代码上下文中使用弱引用? 能够将终结器附加到对象也很酷。

【问题讨论】:

    标签: javascript google-chrome-extension weak-references


    【解决方案1】:

    我找到了Weak reference 文档 在我的搜索中,但我还没有真正尝试过它是否也适用于 Chrome。

    How do I make a class support weak references? 中声明,要使类在 Javascript 中支持弱引用,请确保您的 QueryInterface 方法返回您的 nsISupportsWeakReference 接口的对象。

    浏览给定的文档并尝试示例代码可能会有所帮助。

    【讨论】:

    • hm,不幸的是我还没有找到适用于 chrome 的东西,只有弱 npm 包,它包含要链接到 v8 源代码的 C 代码
    • 另外,我认为 Firefox 版本也不能正常工作,因为根据我的研究,只有特权代码(即在插件本身中编写的代码)可以被弱引用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-01-31
    • 2013-11-03
    • 1970-01-01
    • 2015-04-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多