← ТехнологииНай-важното за

structuredClone(): независимо копие на вложени данни

Издател: ResumeMaker • 1 източника

Публикувано: 21.10.2026 14:07 · Променено: 21.10.2026 14:07

AI проверка по източници: 21.10.2026 10:06. Не е редакторско одобрение.

В няколко изречения

Накратко

structuredClone() може да създаде дълбоко копие на поддържани стойности. Това е различно от копиране само на външния обект.

Полезно е да знаеш

Когато редактираш вложени данни, плиткото копие може да остави общи вътрешни обекти. structuredClone() използва алгоритъма за структурирано клониране, за да създаде дълбоко копие на поддържаните стойности. Не всяка произволна стойност е клонируема. [1]

Например const original = {settings: {theme: 'light'}}; const copy = structuredClone(original); copy.settings.theme = 'dark';. В този пример original.settings.theme остава 'light'. Двата вложени обекта вече са отделни.

Това е удобно за редакция на чернова в интерфейс, когато не искаш промените да се отразяват веднага в изходното състояние. Не е механизъм за съхранение на диск: копието остава данни в паметта.

Съществува и прехвърляне на transferable обекти. При него ресурсът може да бъде отделен от оригинала, вместо да останат две независими употреби. [1] Не добавяй опция за transfer, ако не разбираш тази разлика. За обикновена вложена конфигурация като примера тя не е нужна.

Източници

За повече подробности и проверка на информацията:

  1. [1] MDN — structuredClone ↗