Jquery IndexDB 是一種在客戶端存儲數據的方式。由于它不需要服務器的支持,因此所有的數據都可以在本地存儲,這大大提高了網站的性能和速度。下面我們來了解一些基本操作和用法。
// 創建或打開數據庫 var db = null; var request = window.indexedDB.open('MyDatabase', 1); request.onsuccess = function(event){ db = event.target.result; }; // 創建objectStore var transaction = db.transaction(["MyObjectStore"], "readwrite"); var objectStore = transaction.objectStore("MyObjectStore"); // 添加數據 var request = objectStore.add({id: 1, name: "john", age: 25}); request.onsuccess = function(event){ console.log("success"); }; // 修改數據 var transaction = db.transaction(["MyObjectStore"], "readwrite"); var objectStore = transaction.objectStore("MyObjectStore"); var request = objectStore.get(1); request.onsuccess = function(event){ var data = event.target.result; data.name = "jack"; var requestUpdate = objectStore.put(data); requestUpdate.onsuccess = function(event){ console.log("update success"); }; }; // 查詢數據 var transaction = db.transaction(["MyObjectStore"], "readonly"); var objectStore = transaction.objectStore("MyObjectStore"); var request = objectStore.get(1); request.onsuccess = function(event){ var data = event.target.result; console.log(data); }; // 刪除數據 var request = objectStore.delete(1); request.onsuccess = function(event){ console.log("delete success"); };
以上是一些基礎的操作,需要注意的是,數據庫的操作都是異步的,因此需要用回調函數來處理結果。同時,我們還需要注意不同的訪問方式和數據庫結構的設計,以避免出現數據冗余和查詢效率低下的問題。