developer tip

자바 스크립트에서 localStorage를 지우시겠습니까?

optionbox 2020. 9. 30. 10:23
반응형

자바 스크립트에서 localStorage를 지우시겠습니까?


자바 스크립트에서 브라우저의 localStorage를 재설정 / 삭제하는 방법이 있습니까?


이것을 사용하여 localStorage를 지 웁니다.

localStorage.clear();

사용자의 로컬 저장소에서 특정 항목 또는 변수를 제거하려면 다음을 사용할 수 있습니다.

localStorage.removeItem("name of localStorage variable you want to remove");

window.localStorage.clear(); //try this to clear all local storage

다음은 예외가있는 모든 localStorage 항목을 제거 할 수있는 기능입니다. 이 함수에는 jQuery 가 필요 합니다. 요점을 다운로드 할 수 있습니다 .

이렇게 부를 수 있습니다

let clearStorageExcept = function(exceptions) {
  let keys = [];
  exceptions = [].concat(exceptions); // prevent undefined

  // get storage keys
  $.each(localStorage, (key) => {
    keys.push(key);
  });

  // loop through keys
  for (let i = 0; i < keys.length; i++) {
    let key = keys[i];
    let deleteItem = true;

    // check if key excluded
    for (let j = 0; j < exceptions.length; j++) {
      let exception = exceptions[j];
      if (key == exception) {
        deleteItem = false;
      }
    }

    // delete key
    if (deleteItem) {
      localStorage.removeItem(key);
    }
  }
};

먼저 localStorage가 활성화되어 있는지 확인해야합니다. 다음과 같이하는 것이 좋습니다.

var localStorageEnabled = false;
try { localStorageEnabled = !!localStorage; } catch(e) {};

예, (경우에 따라) localStorage가 창 개체의 구성원인지 확인할 수 있습니다. 그러나 인덱스 'localStorage'에 액세스하려고 시도하는 경우에도 예외를 발생시키는 iframe 샌드 박싱 옵션이 있습니다. 따라서 모범 사례를 위해 이것은 localStorage가 활성화되어 있는지 확인하는 가장 좋은 방법입니다. 그런 다음 이렇게 localStorage를 지울 수 있습니다.

if (localStorageEnabled) localStorage.clear();

예를 들어 웹킷 브라우저에서 오류가 발생한 후 localStorage를 지울 수 있습니다.

// clears the local storage upon error
if (localStorageEnabled)
  window.onerror = localStorage.clear.bind(localStorage);

위의 예에서는이 기능이 .bind(window)없으면 객체가 자동으로 실패 하는 대신 객체 localStorage.clear의 컨텍스트에서 함수가 실행 되기 때문에이 필요합니다 . 이를 증명하기 위해 아래 예를 살펴보십시오.windowlocalStorage

window.onerror = localStorage.clear;

와 같다:

window.onerror = function(){
    localStorage.clear.call(window);
}

Localstorage is attached on the global window. When we log localstorage in the chrome devtools we see that it has the following APIs:

enter image description here

We can use the following API's for deleting items:

  1. localStorage.clear(): Clears the whole localstorage
  2. localStorage.removeItem('myItem'): To remove individual items

localStorage.clear();

or

window.localStorage.clear();

to clear particular item

window.localStorage.removeItem("item_name");

To remove particular value by id :

var item_detail = JSON.parse(localStorage.getItem("key_name")) || [];           
            $.each(item_detail, function(index, obj){
                if (key_id == data('key')) {
                    item_detail.splice(index,1);
                    localStorage["key_name"] = JSON.stringify(item_detail);
                    return false;
                }
            });

To clear sessionStorage

sessionStorage.clear();

참고URL : https://stackoverflow.com/questions/7667958/clearing-localstorage-in-javascript

반응형