[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를 사용할 수 있습니다.
localStorage.clear()
: 전체 로컬 스토리지를 지 웁니다.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
의 컨텍스트에서 함수가 실행 되기 때문에 필요합니다 . 이를 설명하기 위해 아래 예제를보십시오.window
localStorage
window.onerror = localStorage.clear;
와 같다:
window.onerror = function(){
localStorage.clear.call(window);
}
답변
모든 항목을 삭제하려면 당신은에 저장된 로컬 스토리지 다음
localStorage.clear();
저장된 모든 키를 지우려면 이것을 사용하십시오.
특정 키 / 값 만 지우거나 제거하려면 removeItem (key) 사용할 수 있습니다 .
localStorage.removeItem('yourKey');