數據緩存
setStorage
TIP
該API使用方法為: wx.setStorage(Object object)
功能說明: 將資料存儲在本地緩存中指定的key中。 會覆蓋掉原來該key對應的內容。 除非用戶主動删除或因存儲空間原因被系統清理,否則數據都一直可用。 單個key允許存儲的最大數據長度為1MB,所有資料存儲上限為10MB。
參數及說明: Object object。
内容 類型 預設值 必填 說明 key string - 是 本地緩存中指定的key data any - 是 需要存儲的內容,只支持原生類型、 Date、 及能够通過JSON.stringify序列化的對象 success Function - 否 接口調用成功的回呼函數 fail Function - 否 接口調用失敗的回呼函數 complete Function - 否 接口調用結束的回呼函數(無論成功與否都執行) 示例代碼:
wx.setStorage({
key:"key",
data:"value"
})wx.setStorage({
key: 'key',
success (res) {
console.log(res.data)
}
})setStorageSync
TIP
該API使用方法為: wx.setStorageSync(string key,any data)
說明
storage應只用來進行數據的持久化存儲,不應用於運行時的數據傳遞或全域狀態管理。 啟動過程中過多的同步讀寫存儲,會顯著影響啟動耗時。
功能說明: 將資料存儲在本地緩存中指定的key中。 會覆蓋掉原來該key對應的內容。 除非用戶主動删除或因存儲空間原因被系統清理,否則數據都一直可用。 單個key允許存儲的最大數據長度為1MB,所有資料存儲上限為10MB。
參數及說明: string key, 本地緩存中指定的key; any data, 需要存儲的內容。 只支持原生類型、 Date、 及能够通過JSON.stringify序列化的對象。
示例代碼:
try {
wx.setStorageSync('key', 'value')
} catch (e) { }revokeBufferURL
TIP
該API使用方法為: wx.revokeBufferURL(string url)
該API小程序支持,小遊戲暫不支持
- 功能說明: 根據URL銷毀存在記憶體中的數據。
- 參數及說明: string url, 需要銷毀的二進位數據URL。
removeStorage
TIP
該API使用方法為: wx.removeStorage(Object object)
功能說明: 從本地緩存中移除指定key
參數及說明: Object object。
内容 類型 預設值 必填 說明 key string - 是 本地緩存中指定的key success Function - 否 接口調用成功的回呼函數 fail Function - 否 接口調用失敗的回呼函數 complete Function - 否 接口調用結束的回呼函數(無論成功與否都執行) 示例代碼:
wx.removeStorage({
key: 'key',
success (res) {
console.log(res)
}
})try {
wx.removeStorageSync('key')
} catch (e) {
// Do something when catch error
}removeStorageSync
TIP
該API使用方法為: wx.removeStorageSync(string key)
功能說明: wx.removeStorage 的同步版本
參數及說明: string key,本地緩存中指定的key。
示例代碼:
wx.removeStorage({
key: 'key',
success (res) {
console.log(res)
}
})try {
wx.removeStorageSync('key')
} catch (e) {
// Do something when catch error
}getStorage
TIP
該API使用方法為: wx.getStorage(Object object)
功能說明: 從本地緩存中非同步獲取指定key的內容。
參數及說明: Object object。
内容 類型 預設值 必填 說明 key string - 是 本地緩存中指定的key success Function - 否 接口調用成功的回呼函數 fail Function - 否 接口調用失敗的回呼函數 complete Function - 否 接口調用結束的回呼函數(無論成功與否都執行) object.success回呼函數參數: Object res
内容 類型 說明 data any key對應的內容
示例代碼:
wx.getStorage({
key: 'key',
success (res) {
console.log(res.data)
}
})wx.getStorage({
key: 'key',
success (res) {
console.log(res.data)
}
})createBufferURL
TIP
該API使用方法為: string wx.createBufferURL(ArrayBuffer|TypedArray buffer)
該API小程序支持,小遊戲暫不支持
- 功能說明: 根據傳入的buffer創建一個唯一的URL存在記憶體中
- 參數及說明: ArrayBuffer|TypedArray buffer,需要存入記憶體的二進位數據。
- 返回值: string。
getStorageSync
TIP
該API使用方法為: any wx.getStorageSync(string key)
TIP
storage應只用來進行數據的持久化存儲,不應用於運行時的數據傳遞或全域狀態管理。 啟動過程中過多的同步讀寫存儲,會顯著影響啟動耗時。
功能說明: 從本地緩存中同步獲取指定key的內容。
參數及說明: string key, 本地緩存中指定的key。
返回值: any key對應的內容
示例代碼:
try {
var value = wx.getStorageSync('key')
if (value) {
// Do something with return value
}
} catch (e) {
// Do something when catch error
}getStorageInfo
TIP
該API使用方法為: wx.getStorageInfo(Object object)
功能說明: 非同步獲取當前storage的相關資訊。
參數及說明: Object object。
内容 類型 預設值 必填 說明 success Function - 否 接口調用成功的回呼函數 fail Function - 否 接口調用失敗的回呼函數 complete Function - 否 接口調用結束的回呼函數(無論成功與否都執行) object.success回呼函數參數: Object object
内容 類型 說明 keys Array.< string>當前storage中所有的key currentSize number 當前佔用的空間大小,單位KB limitSize number 限制的空間大小,單位KB
示例代碼:
wx.getStorageInfo({
success(res) {
console.log(res.keys)
console.log(res.currentSize)
console.log(res.limitSize)
}
})wx.getStorageInfo({
success(res) {
console.log(res.keys)
console.log(res.currentSize)
console.log(res.limitSize)
}
})getStorageInfoSync
TIP
該API使用方法為: Object wx.getStorageInfoSync()
功能說明: wx.getStorageInfo的同步版本
返回值: Object object。
object.success回呼函數參數: Object object
内容 類型 說明 keys Array.< string>當前storage中所有的key currentSize number 當前佔用的空間大小,單位KB limitSize number 限制的空間大小,單位KB
示例代碼:
wx.getStorageInfo({
success (res) {
console.log(res.keys)
console.log(res.currentSize)
console.log(res.limitSize)
}
})try {
const res = wx.getStorageInfoSync()
console.log(res.keys)
console.log(res.currentSize)
console.log(res.limitSize)
} catch (e) {
// Do something when catch error
}clearStorage
TIP
該API使用方法為: wx.clearStorage(Object object)
功能說明: 清理本地數據緩存
參數及說明: Object object。
内容 類型 預設值 必填 說明 success Function - 否 接口調用成功的回呼函數 fail Function - 否 接口調用失敗的回呼函數 complete Function - 否 接口調用結束的回呼函數(無論成功與否都執行) 示例代碼:
wx.clearStorage()try {
wx.clearStorageSync()
} catch(e) {
// Do something when catch error
}clearStorageSync
TIP
該API使用方法為: wx.clearStorageSync()
功能說明: wx.clearStorage的同步版本
示例代碼:
wx.clearStorage()try {
wx.clearStorageSync()
} catch(e) {
// Do something when catch error
}batchSetStorage
TIP
該API使用方法為: wx.batchSetStorage(Object object)
該API小程序支持,小遊戲暫不支持
功能說明: 將資料存儲在本地緩存中指定的key中。 會覆蓋掉原來該key對應的內容。 除非用戶主動删除或因存儲空間原因被系統清理,否則數據都一直可用。 單個key允許存儲的最大數據長度為1MB,所有資料存儲上限為10MB。
參數及說明: Object object。
内容 類型 預設值 必填 說明 kvList Array - 是 [{ key, value }] success Function - 否 接口調用成功的回呼函數 fail Function - 否 接口調用失敗的回呼函數 complete Function - 否 接口調用結束的回呼函數(無論成功與否都執行) - Array.<
Object> kvList
内容 類型 必填 說明 key string 是 key本地緩存中指定的key value any 是 data需要存儲的內容。 只支持原生類型、 Date、 及能够通過JSON.stringify序列化的對象 - Array.<
示例代碼:
wx.setStorage({
key:"key",
data:"value"
})// Enable encrypted storage
wx.batchSetStorage({
kvList: [{
key: 'key',
value: 'value',
}],
})batchSetStorageSync
TIP
該API使用方法為: Array.<any> wx.batchGetStorageSync(Array.<string> keyList)
該API小程序支持,小遊戲暫不支持
功能說明: 將資料存儲在本地緩存中指定的key中。 會覆蓋掉原來該key對應的內容。 除非用戶主動删除或因存儲空間原因被系統清理,否則數據都一直可用。 單個key允許存儲的最大數據長度為1MB,所有資料存儲上限為10MB。
參數及說明: Array.<
Object> kvList。内容 類型 必填 說明 key string 是 key本地緩存中指定的key value any 是 data需要存儲的內容。 只支持原生類型、 Date、 及能够通過JSON.stringify序列化的對象 示例代碼:
try {
wx.batchSetStorageSync([{key: 'key', value: 'value'}])
} catch (e) { }batchGetStorage
TIP
該API使用方法為: wx.batchGetStorage(Object object)
該API小程序支持,小遊戲暫不支持
功能說明: 從本地緩存中非同步批量獲取指定key的內容。
參數及說明: Object object。
内容 類型 預設值 必填 說明 kvList Array< string>- 是 本地緩存中指定的keyList success Function - 否 接口調用成功的回呼函數 fail Function - 否 接口調用失敗的回呼函數 complete Function - 否 接口調用結束的回呼函數(無論成功與否都執行) 示例代碼:
wx.batchGetStorage({
keyList: ['key'],
success (res) {
console.log(res)
}
})batchGetStorageSync
TIP
該API使用方法為: Array.<any> wx.batchGetStorageSync(Array.<string> keyList)
該API小程序支持,小遊戲暫不支持
功能說明: 從本地緩存中同步獲取指定key的內容
參數及說明: Array.<string> keyList, 本地緩存中指定的key數組
返回值: Array.<any>,key對應的內容
示例代碼:
// For reading multiple keys, batch reading is superior in performance to multiple getStorageSync readings.
try {
var valueList = wx.batchGetStorageSync(['key'])
if (valueList) {
// Do something with return value
}
} catch (e) {
// Do something when catch error
}