Встречается на собеседованиях • сегодня
Какие особенности копирования через JSON
Копирование через JSON.stringify и JSON.parse имеет несколько ограничений:
- Теряются функции – методы объектов не копируются, так как JSON не поддерживает функции.
- Пропадают специальные типы –
Date,RegExp,Map,Set,undefinedиInfinityпреобразуются вnullили строки. - Циклические ссылки – вызовет ошибку, так как JSON не поддерживает циклические структуры.
- Symbol-ключи – игнорируются, так как JSON поддерживает только строковые ключи.
Пример:
javascript
const obj = {
date: new Date(),
fn: () => console.log('test'),
undef: undefined
};
const copy = JSON.parse(JSON.stringify(obj));
// copy.date будет строкой, fn и undef пропадутДля глубокого копирования с сохранением типов лучше использовать библиотеки типа lodash.cloneDeep или structuredClone (для простых случаев).

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы