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

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

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

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

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

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

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

Похожие вопросы
23 нояб. 2024, в 01:31
1000 руб./за проект
23 нояб. 2024, в 00:16
2000 руб./за проект
22 нояб. 2024, в 23:55
3000 руб./за проект