2012-05-22 2 views
108

localStorage으로 설정된 모든 데이터를 지울 필요가 있습니다. 이렇게하면 사용자가 계정을 삭제할 때 localStorage에서 null으로 완전히 재설정됩니다.HTML5 - localStorage 모든 데이터 제거 및 지우기

간단한 기능으로 어떻게 할 수 있습니까?

function clearLocalStorage(){ 
    return localStorage= null; 
} 

그러나 예상대로 작동하지 않습니다 :

나는이 시도. 이 같은

+0

이 참조는, 수도는 [로컬 저장 (http://diveintohtml5.info/storage.html) – tilak

답변

301

localStorage.clear();

작동합니다.

+2

또는 도움이됩니다. [추가 텍스트] –

+4

window.localStorage.clear(); // ionic에서 작업하는 경우 (예 : –

+0

) sessionStorage.clear(); 세션 저장 영역 데이터를 제거합니다. –

3

뭔가 수행해야합니다

function cleanLocalStorage() { 
    for(key in localStorage) { 
     delete localStorage[key]; 
    } 
} 

는 사용자가 localStorage에 저장된 다른 데이터를 가질 수 있으며, 당신이 삭제 된 경우 아마 꽤 쳤다 것 같은,하지만이 사용에 대한주의하십시오. a) 사용자의 데이터를 localStorage에 저장하지 않거나 b) 단일 변수에 사용자 계정을 저장 한 다음 localStorage에있는 모든 키를 삭제하는 대신 삭제하는 것이 좋습니다.


편집 : 린은 지적, 당신은 localStorage.clear()로 좋은 수 있습니다. 그러나 이전의 요점은 여전히 ​​남아 있습니다.

66

제거 할 경우/로컬 저장소에서 청소 모든 값보다

localStorage.clear(); 

를 사용하고 로컬 저장소에서 특정 항목을 제거하려면 다음 코드

localStorage.removeItem(key); 
4

를 사용하는 것보다 .one을 사용하면이 작업이 한 번만 수행되고 반복적으로 수행되지는 않습니다. 당신이 그것을 무리하지 않는 가독성을 위해, 한 (여러 번 실행하는 다른 이벤트가 필요한 경우)

$(window).one("focus", function() { 
    localStorage.clear(); 
}); 

여러 document.ready 이벤트 리스너를 넣어 괜찮습니다.

.one은 웹 페이지를 처음 열거 나 모바일 응용 프로그램을 처음 설치할 때 한 번만 로컬 저장소를 지우고 싶을 때 특히 유용합니다.

// Fired once when document is ready 
    $(document).one('ready', function() { 
     localStorage.clear(); 
    }); 
6

window 개체에서 액세스 할 때 Firefox에서만 작동합니다.

예 ...

window.onload = function() 
{ 
window.localStorage.clear(); 
}