Anonymous
А реализация delete-а.
Anonymous
Вот тут читайте: https://habrahabr.ru/post/150723/
Oleg
По факту хеши объектов в других языках - тек же айди, только автоматом генерятся
Sergey
ага))) пойду в туалет хабр читать
Dreamerinnoise
ага))) пойду в туалет хабр читать
ну там в комментах mraleph всё пояснил
Sasha
Нужно объектам айди давать
А ты имеешь ввиду просто давать инкремент инту или есть какие-то tips & tricks для жс?
Oleg
У тебя есть объекты
Oleg
Много
Oleg
Их нужно куда-то все положить
Oleg
Но при этом ещё и удалять
Oleg
И часто
Oleg
Объекты имеют какие-либо айди
Oleg
Ты берешь делаешь обычный JS-объект
Oleg
Ключи - айдишники
Oleg
Значения - эти объекты
Anonymous
👍
Oleg
Всё работает очень быстро и без утечек
Sasha
Я вот про ключи
Anonymous
На самом деле не важно айди или не айди, просто уникальные индексы/ключи нужны.
Anonymous
А делай ты их как хочешь.
Sasha
Есть ли какие-то интересные и актуальные способы генерации ключей?
Oleg
Можно вот про это прочитать
Oleg
https://learn.javascript.ru/symbol
Oleg
Это прям чтоб соасем уникально
Oleg
Можно просто порядковые номера
Oleg
Айдишники из базы там
Oleg
Если с сервера прилеьело
Александр
Народ, как показать элемент удаленный?
Artёm
Непонятный вопрос, откуда удаленный? Где показать?
Александр
page_header.remove('page_header');
Александр
а потом его как показать?
Александр
восстановить ли
Oleg
А ещё детальнее?
Dream
это по ходу жеквери
Dream
)
Александр
Не
Александр
Чистый JS
Александр
Ну из DOM удаляю документ сначала
Александр
page_header.remove('page_header');
Oleg
Тогда мы не можем ничем помочь
Александр
а потом его же (page_header) надо показать как-то (восстановить)
Oleg
Потому что нужно понимать контекст
Oleg
Фреймворк
Oleg
Библиотеку
Oleg
Детали
Artёm
Ну, если я не ошибаюсь, удаленные элементы из DOM не восстанавливаются если ты используешь elem.remove()
Oleg
Но кто-то попытался угадать, да
Александр
а если page_header.parentNode.removeChild('page_header');
Александр
?
Artёm
Аналогично
Александр
Ппц
Artёm
Ведь нет никакого хранилища или корзины
Artёm
Куда ты складываешь удаленное)
Александр
А скрыть же можно просто? Через page_header.style?
Dream
тебе нужно держать где-то копию элемента который ты удаляешь
Artёm
Ну да
Artёm
display none
Artёm
Либо копия, да
Artёm
Присвой display none и он исчезнет. Но в DOM все равно будет
Александр
page_header.style.display = "none";
Александр
так?
Artёm
Если задача скрыть, то display отлично подойдет
Александр
Я пробовал, не скрывает почему-то
Александр
да, скрыть
Artёm
может в синтаксисе промахнулся, смотри внимателей
Artёm
Должно работать
Artёm
document.querySelector(".your-class").style.display = "none"
Artёm
Гарантированно рабочая конструкция
Dream
page_header у него очеведно переменая где id этого хедера
Александр
Пасиб)
Dream
смотри в код
Anonymous
Artёm
Ну в новых браузерах.
В старых не работает?
Anonymous
IE9+
Anonymous
В принципе ниже уже редко кто поддерживает.
Artёm
В принципе ниже уже редко кто поддерживает.
А какие аналоги? getelembyid и jquery? я просто не умею в кросбраузерность пока
Anonymous
jquery
Anonymous
Первая версия поддерживает самые старые браузеры.
Anonymous
Третяя уже не все.