Глубокая копия
Есть ли в js стандартный метод получения глубокой копией массива? Чето гугл не помог, пока написал eval(JSON.stringify(array)), перегоняю туда-обратно...
|
Если со вложенными, то только так:
JSON.parse(JSON.stringify(array))Или вручную перебором. Иных вариантов нет. |
|
Erolast, +
Я почему то всегда думал, что данная функция копирует только верхний уровень. Заблуждался :) |
эээ вы чего, при чем тут Object.assign?
nerv_, у тебя же o1.foo === o2.foo → true |
А... Глубокое. Такого нет, да.
|
Цитата:
|
Да, кстати, для неглубокого копирования массивов в ES6 есть вот такой вот сахарок:
let numbers = [1, 2, 3, 4, 5]; let copy = [...numbers]; http://6to5.org/docs/learn-es6/#default-rest-spread |
Erolast, классический .slice(0) в данном случае и проще и быстрее и удобнее.)
Троеточее слишком крутая штука, чтоб для таких мелочей её юзать.) |
Так очевидней ж.
|
Часовой пояс GMT +3, время: 12:00. |