javascript - 将 __proto__ 分配给接口(interface)以将其转换为对象 - 聪明还是危险?

标签 javascript prototype web-worker

当使用 postMessage() 向 Web Worker 复制数据或从 Web Worker 复制数据时,您可以发布一个属于类的对象。但在另一边,接收到的对象只是数据(即接口(interface),而不是类)。

One person建议将正确的 __proto__ 分配给接收端的该对象,以将其重新转换为类。这有效。但这是可靠且安全的还是自找麻烦?

我不是在这里征求意见(这是一个很大的禁忌),我是问是否存在可能会困扰我的具体技术问题。

最佳答案

某些浏览器可能不支持修补__proto__,或者将来可能会停止支持。

当我的代码在 WinRT 中使用时停止工作时,我发现了这一点。 HTML 应用程序。

正确的方法(在 ES5 中)是调用 Object.create(Constructor.prototype, obj) ( see her for more examples )

关于javascript - 将 __proto__ 分配给接口(interface)以将其转换为对象 - 聪明还是危险?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23302812/

相关文章:

Javascript:数组成员变量在原型(prototype)继承中不作为实例变量工作

javascript - 用另一个原型(prototype)扩展原型(prototype)

javascript - 中断循环的 WebWorker

javascript - 如何创建子 worker ?

javascript - 如何在不区分大小写的情况下查询mongodb中的字符串?

JavaScript 函数未触发

javascript - 处理在模板文字中调用的表单

javascript - 原型(prototype):应用与调用、新建与创建

javascript - 如何监控 contenteditable div 中的文本样式和格式?

javascript - 在独立的 V8 Javascript 引擎中使用 Web-Worker