Есть ли способ отключить что-то из локального хранилища?

#javascript #local-storage

Вопрос:

Я хочу иметь кнопку, которая переключает что-то в локальном хранилище и из него (она нажата один раз, и она добавляет что-то в локальное хранилище, она нажата снова, и это что-то исчезает из локального хранилища). Я хочу сделать что-то вроде кода ниже, но переключить «статус» вместо того, чтобы устанавливать его постоянно.

   function setStatus(statusName) {
    localStorage.setItem('status', statusName);
    document.documentElement.className = statusName;
  }

  (function () {
    if (localStorage.getItem('status')) {
      setStatus(localStorage.getItem('status'))
    }
 

Это код, который я использовал в чем-то несвязанном, и я знаю, что он работает. Однако это устанавливает статус, а не переключает его. Мне интересно, есть ли способ пересмотреть этот код, чтобы он это сделал.

Комментарии:

1. localStorage.removeItem(«статус»); w3schools.com/html/html5_webstorage.asp

Ответ №1:

Может быть, использовать Storage.removeItem()?

 function toggleItem(item, value) {
  if (localStorage.getItem(item) {
    localStorage.removeItem(item);
  } else {
    localStorage.setItem(item, value);
  }
}
 

Удовлетворяет ли это вашим требованиям?

Комментарии:

1. О, это очевидно. Я не знал, что это был вариант, но почему бы и нет? Огромное спасибо