Map подходит для кеша с ключами по значению примитива или ссылке объекта; JSON.stringify пытается получить структурный строковый ключ, но имеет ограничения.
Зачем ты использовала JSON.stringify? Можно ли было использовать Map вместо объекта для кэша?
Map подходит для кеша с ключами по значению примитива или ссылке объекта; JSON.stringify пытается получить структурный строковый ключ, но имеет ограничения.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Map подходит для кеша с ключами по значению примитива или ссылке объекта; JSON.stringify пытается получить структурный строковый ключ, но имеет ограничения.
У stringify есть проблемы с циклами, BigInt, пропуском undefined и различием структур, дающих одинаковый JSON. Map с массивом аргументов тоже не решит задачу, если каждый раз создаётся новый массив-ключ. Выбор зависит от контракта равенства: identity, структура или специально построенный стабильный ключ.