为什么结构化克隆不复制函数对象?



MDN说">Function对象不能被结构化克隆算法复制;试图抛出DataCloneError异常!">

为什么复制一个函数对象发出一个错误与structuredClone()?

如果你在MDN/structuredClone上阅读,它说

DataCloneErrorDOMException

  • 如果输入值的任何部分不可序列化则抛出。

为什么函数是不可序列化的,参见这里:为什么函数是不可序列化的?

根据我对这些答案的理解,TL;DR是,这是因为函数可以转换为字符串,但是函数中引用的超出作用域的变量/函数会导致问题。

最新更新