Storage: phương thức setItem()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Phương thức setItem() của giao diện Storage, khi được truyền vào tên khóa và giá trị, sẽ thêm khóa đó vào đối tượng Storage đã cho, hoặc cập nhật giá trị của khóa nếu nó đã tồn tại.
Cú pháp
setItem(keyName, keyValue)
Tham số
Giá trị trả về
Không có (undefined).
Ngoại lệ
QuotaExceededError-
Được ném ra nếu bộ lưu trữ hết hạn mức đĩa hoặc người dùng từ chối cấp thêm dung lượng.
Ví dụ
Hàm sau tạo ba mục dữ liệu trong local storage.
function populateStorage() {
localStorage.setItem("bgcolor", "red");
localStorage.setItem("font", "Helvetica");
localStorage.setItem("image", "myCat.png");
}
Note: Để xem ví dụ thực tế, hãy xem Web Storage Demo.
Storage chỉ hỗ trợ lưu trữ và truy xuất chuỗi. Nếu bạn muốn lưu các kiểu dữ liệu khác, bạn phải chuyển chúng thành chuỗi. Với đối tượng thuần và mảng, bạn có thể dùng JSON.stringify().
const person = { name: "Alex" };
localStorage.setItem("user", person);
console.log(localStorage.getItem("user")); // "[object Object]"; không hữu ích!
localStorage.setItem("user", JSON.stringify(person));
console.log(JSON.parse(localStorage.getItem("user"))); // { name: "Alex" }
Tuy nhiên, không có cách chung nào để lưu các kiểu dữ liệu tùy ý. Hơn nữa, đối tượng được truy xuất là một bản sao sâu của đối tượng gốc và các thay đổi trên nó không ảnh hưởng đến đối tượng gốc.
Thông số kỹ thuật
| Thông số kỹ thuật |
|---|
| HTML> # dom-storage-setitem-dev> |