Как логировать поля на сайте?

У меня есть скрипт, который раз в секунду, по setTimeout, проходится по всем input, select, textarea и делает массив name-value и сохраняет его в localStorage.

Как мне в setTimeout функции организовать проверку, что если текущий массив который составила функция, равен тому, что сейчас в localStorage, то не стоит его перезаписывать?

Как минимальным кодом реализовать проверку равности массивов или может вы предложите лучший вариант, как мне организовать логирование всех полей
  • Вопрос задан
  • 83 просмотра
Решения вопроса 1
yarkov
@yarkov Куратор тега JavaScript
Проект "Жизнь после смерти" - lifeafterdeath.ru
если текущий массив который составила функция, равен тому, что сейчас в localStorage, то не стоит его перезаписывать

А зачем? Оптимизация ради оптимизации?
Ну если прям вот очень надо, то собираете все в массив и делаете
JSON.stringify(arrayData) === localStorage.getItem('arrayData')

Это если быстро и примитивно.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@LemonFox
stateless mind
Можно вешать событие на onchange/keypress всех элементов, которое бы устанавливало флаг того, что поле изменено. Ну и по этому флагу уже инициировать сбор данных и сохранение в сторадж
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Artezio Нижний Новгород
от 130 000 до 180 000 ₽
Artezio Москва
от 160 000 до 220 000 ₽
Sportrecs Москва
от 150 000 до 200 000 ₽
29 нояб. 2020, в 19:24
95000 руб./за проект
29 нояб. 2020, в 18:43
10000 руб./за проект
29 нояб. 2020, в 16:24
30000 руб./за проект