以現代方式進行JavaScript變數的深拷貝

多年以來,我們一直使用奇怪的解決方法來進行JavaScript物件的深拷貝

其中許多方法容易出現錯誤。

比如使用JSON.parse(JSON.stringify(obj)),這種方法可能會忽略某些類型的物件。

或者更糟糕的是,通過引用來複製物件屬性,這樣可能會引入未來的錯誤。

如今,我們有structuredClone(),它是DOM API的一部分。

它不是JavaScript的一部分,而是DOM API的一部分。

它在所有現代瀏覽器的最新版本中都可用:

在Node.js 17+中也可用。