2010-09-02 37 views

Trả lời

4

Bộ nhớ ngoại tuyến là bộ nhớ trong. Nó không có nghĩa là để xuất khẩu một số tập tin vào một định dạng cụ thể/thư mục cụ thể trên đĩa.

2

Bạn có thể sử dụng localstorage nhưng chỉ cho phép bạn lưu trữ nội dung nào đó trên bộ nhớ trong của trình duyệt (bạn không thể quyết định vị trí và cách ghi dữ liệu).

Ngoài ra còn có một tập tin API, nhưng là ở giai đoạn rất sớm của nó và, bởi bây giờ, nó không cho phép để lưu trữ các tập tin tùy ý trên máy khách:

HTML 5 File API

3

Web cửa hàng lưu trữ API dữ liệu như cặp [khóa, giá trị] trong đó cả khóa, giá trị là Chuỗi.

Vì vậy, dữ liệu ở bất kỳ định dạng nào cần phải tuân thủ cơ chế này để lưu trữ cục bộ. Vì vậy, ví dụ, nếu bạn có một đối tượng JSON như:

{ 
    name:'John', 
    gender:'male' 
} 

Bạn có thể lưu nó (thông qua JavaScript) sau khi đi qua nó như là một chuỗi như:

localStorage.setItem("myObj","{name:'John',gender:'male'}"); 

Đối với đối tượng JSON, sử dụng JSON. stringify() để chuyển đổi chúng thành chuỗi và sử dụng JSON.parse() để đọc lại.

0

Hãy nói rằng bạn đã tạo mảng hoặc đối tượng như thế này.

var arrayOrObject = [{obj1:{name:John, age:16}},{obj2:{name:Jane, age:17}}]; 

bạn có thể lưu dữ liệu này vào thiết bị cục bộ bằng cách sử dụng localStorage.

if (typeof(localStorage) == 'undefined') { 
    alert('Your browser does not support HTML5 localStorage. Try upgrading.'); 
} 
else { 
    try {     
     localStorage.setItem("storedArrayOrObject", JSON.stringify(arrayOrObject)); 
          //saves to the database, “key”, “value”     
    } catch (e) { 
     if (e == QUOTA_EXCEEDED_ERR) { 
      alert('Quota exceeded!'); //data wasn’t successfully saved due to quota exceed so throw an error 
     } 
    } 
} 

Để có được dữ liệu trong mảng hoặc đối tượng Cấu trúc:

var getStoredArrayOrObject = JSON.parse(localStorage.getItem('storedArrayOrObject'));` 

Để loại bỏ các dữ liệu localStorage:

localStorage.removeItem('storedArrayOrObject'); 

Đừng khuyên này nhưng sẵn:

localStorage.clear(); 
Các vấn đề liên quan