WorkerGlobalScope:structuredClone() 方法

Baseline 已广泛支持

此特性已经十分成熟,可在许多设备和浏览器版本上使用。自 2022 年 3 月起,它已在各浏览器中可用。

注意:此功能仅在 Web Workers 中可用。

structuredClone() 方法是 WorkerGlobalScope 接口的一部分,它使用 structured clone 算法 为给定的值创建一个深拷贝

该方法还允许将原始值中的可转移对象转移到新对象,而不是进行克隆。转移的对象将从原始对象中分离,并附加到新对象;它们将不再能在原始对象中访问。

语法

js
structuredClone(value)
structuredClone(value, options)

参数

value

要克隆的对象。这可以是任何支持结构化克隆的类型

options 可选

具有以下属性的对象:

transfer

一个可转移对象数组,它们将被移动(而不是克隆)到返回的对象中。

返回值

原始 value深拷贝

异常

DataCloneError DOMException

如果输入值的任何部分不可序列化,则抛出此错误。

描述

有关此函数的详细信息,请参阅 Window.structuredClone()

示例

有关示例,请参阅 Window.structuredClone()

规范

规范
HTML
# dom-structuredclone

浏览器兼容性

另见