使对象结构可克隆

时间:2019-09-06 17:33:22

标签: javascript three.js web-worker

是否有一种自动方法可以通过删除对象中的所有方法来使任意JavaScript对象结构化为可克隆状态?

在我的特定用例中,我正在Web工作者中创建Three.js BufferAttribute对象,并希望将它们传输到主线程。

我目前的方法是在网络工作者中创建一个具有 成员与原始对象相同,只是没有方法。该对象被转移到主线程,并在主线程中再次创建一个适当的three.js BufferAttribute对象,并为其分配属性。

1 个答案:

答案 0 :(得分:2)

不是自动,但是您可以使用Object.fromEntriesObject.entriesfilter

const objectWithoutMethods = Object.fromEntries(
    Object.entries(originalObject).filter(([k, v]) => typeof v !== "function")
);

Object.fromEntriesObject.entries相对较新,但很容易填充。