2011-03-23 30 views

Trả lời

76

Bạn có thể thử lặp qua tất cả các mục trong đối tượng localStorage:

for (var i = 0; i < localStorage.length; i++){ 
    // do something with localStorage.getItem(localStorage.key(i)); 
} 
+4

tôi cảm thấy cần phải đề cập rằng bạn có thể lấy tên khóa cho _i_ bằng 'localStorage.key (i)' – jpeltoniemi

+4

Có thể đối với một người nào đó nó sẽ hữu ích- Hãy lưu ý rằng bên trong nó bạn không thể 'removeItem' khỏi bộ nhớ vì sau đó' localStorage.length 'sẽ giảm vì vậy' for' sẽ thoát sớm hơn bạn muốn. Nếu bạn muốn loại bỏ các mục khỏi localStorage, hãy nhớ nhớ độ dài bộ nhớ cache trước vòng lặp 'for' và vòng lặp từ cuối. – Rob

+1

Để có hiệu suất tốt hơn, vòng lặp phải là: 'cho (var i = 0, l = localStorage.length; i

9

bạn cũng có thể kiểm tra tình trạng localStorage và dữ liệu ngay trong những công cụ chrome cho nhà phát triển Google

+3

không thực sự là một câu trả lời cho câu hỏi nhưng tốt để biết dù sao đi chăng nữa – jpeltoniemi

19

tôi sử dụng khối mã này thường xuyên:

var i; 

console.log("local storage"); 
for (i = 0; i < localStorage.length; i++) { 
    console.log(localStorage.key(i) + "=[" + localStorage.getItem(localStorage.key(i)) + "]"); 
} 

console.log("session storage"); 
for (i = 0; i < sessionStorage.length; i++) { 
    console.log(sessionStorage.key(i) + "=[" + sessionStorage.getItem(sessionStorage.key(i)) + "]"); 
} 
3
for(var i in localStorage) { 
    console.log(i + ' = ' + localStorage[i]); 
} 
Các vấn đề liên quan