[javascript] 자바 스크립트에서 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);
    }
  }
};


답변

로컬 저장소는 전 세계에 연결되어 window있습니다. 크롬 devtools에 로컬 스토리지를 기록하면 다음과 같은 API가 있음을 알 수 있습니다.

여기에 이미지 설명을 입력하십시오

항목을 삭제하기 위해 다음 API를 사용할 수 있습니다.

  1. localStorage.clear(): 전체 로컬 스토리지를 지 웁니다.
  2. localStorage.removeItem('myItem'): 개별 항목을 제거하려면

답변

우선, 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.clear();

저장된 모든 키를 지우려면 이것을 사용하십시오.

특정 키 / 값 만 지우거나 제거하려면 removeItem (key) 사용할 수 있습니다 .

localStorage.removeItem('yourKey');