)
Что взамен?
Смотря какой функционал нужен.
Глубокое копирование, сравнение, перебор объекта Дебонд etc Понятное дело, что можно все свое, но зачем
JSON.parse(JSON.stringify()) Для глубокого копирования не подойдет?)
Я ж говорю - можно написать свое.
https://developer.mozilla.org/en-US/docs/Web/API/structuredClone
Так вроде тут писать то нечего. Ради этого либу полностью в глобал импортить на 50кб (или сколько она там) - ну такое себе
Во, интересно, спасибо)
function deepClone(obj) { let value; let newObj = {}; for (const key in obj) { value = obj[key]; newObj[key] = typeof value === "object" ? deepClone(value) : value; } return newObj; } https://codesandbox.io/s/deep-clone-an-object-57mft
Мой в одну строчку, так-то 😛
Если есть выбор - уже хорошо)
Вот именно поэтому я по-возможности предпочитаю хорошо оттестированные библиотеки - самопалу
Тогда добавьте новые условия, под ваши кейсы :) Если у человека табу на сторонние пакеты, то как минимум фундамент он уже понял.
Если у человека табу - то мои ему соболезнования.
Так табу разные бывают) Для себя бы тоже возможно выбрал либу и не заморачивался. А если в компании строгие полиси на этот счёт (те же большие фин техи), то приходится изобретать велосипед.
Дело не в табу, а в практической целесообразности. Тянуть целую либу, причём полностью, ради двух однострочных функций мотивируя тем, что "50кб погоду не делают" - ну такое себе. в результате будет куча сторонних либ и тоже обновление пакетов будет той еще рулеткой.
Обсуждают сегодня