wx.batchGetStorageSync(Array. keyList)

基础库 2.25.0 开始支持,低版本需做兼容处理。

微信小程序插件:不支持

微信 鸿蒙 OS 版:支持

相关文档: 存储策略

功能描述

从本地缓存中同步批量获取指定 key 的内容。

参数

Array. keyList

本地缓存中指定的 key 数组

返回值

Array.

key对应的内容

示例代码

try {
  var valueList = wx.batchGetStorageSync(['key'])
  if (valueList) {
    // Do something with return value
  }
} catch (e) {
  // Do something when catch error
}

对于多个key的读取, 批量读取在性能上优于多次getStorageSync读取

wx.batchSetStorage(Object object)

基础库 2.25.0 开始支持,低版本需做兼容处理。

以 Promise 风格 调用:支持

微信小程序插件:不支持

微信 鸿蒙 OS 版:支持

相关文档: 存储策略

功能描述

将数据批量存储在本地缓存中指定的 key 中。会覆盖掉原来该 key 对应的内容。除非用户主动删除或因存储空间原因被系统清理,否则数据都一直可用。单个 key 允许存储的最大数据长度为 1MB,所有数据存储上限为 10MB。

参数

Object object

属性 类型 默认值 必填 说明
kvList Array 是 [{ key, value }]
success function 否 接口调用成功的回调函数
fail function 否 接口调用失败的回调函数
complete function 否 接口调用结束的回调函数(调用成功、失败都会执行)

示例代码

wx.setStorage({
  key:"key",
  data:"value"
})
// 开启加密存储
wx.batchSetStorage({
  kvList: [{
    key: 'key',
    value: 'value',
  }],
})

wx.batchSetStorageSync(Array. kvList)

基础库 2.25.0 开始支持,低版本需做兼容处理。

微信小程序插件:不支持

微信 鸿蒙 OS 版:支持

相关文档: 存储策略

功能描述

将数据批量存储在本地缓存中指定的 key 中。会覆盖掉原来该 key 对应的内容。除非用户主动删除或因存储空间原因被系统清理,否则数据都一直可用。单个 key 允许存储的最大数据长度为 1MB,所有数据存储上限为 10MB。

参数

Array. kvList
属性 类型 默认值 必填 说明
key string 是 key 本地缓存中指定的 key
value any 是 data 需要存储的内容。只支持原生类型、Date、及能够通过JSON.stringify序列化的对象。

示例代码

try {
  wx.batchSetStorageSync([{key: 'key', value: 'value'}])
} catch (e) { }

wx.clearStorage(Object object)

以 Promise 风格 调用:支持

微信小程序插件:不支持

微信 Windows 版:支持

微信 Mac 版:支持

微信 鸿蒙 OS 版:支持

相关文档: 存储策略

功能描述

清理本地数据缓存。

参数

Object object

属性 类型 默认值 必填 说明
success function 否 接口调用成功的回调函数
fail function 否 接口调用失败的回调函数
complete function 否 接口调用结束的回调函数(调用成功、失败都会执行)

示例代码

wx.clearStorage()
try {
  wx.clearStorageSync()
} catch(e) {
  // Do something when catch error
}

wx.clearStorageSync()

以 Promise 风格 调用:支持

微信小程序插件:不支持

微信 Windows 版:支持

微信 Mac 版:支持

微信 鸿蒙 OS 版:支持

相关文档: 存储策略

功能描述

wx.clearStorage 的同步版本

示例代码

wx.clearStorage()
try {
  wx.clearStorageSync()
} catch(e) {
  // Do something when catch error
}

wx.getStorage(Object object)

以 Promise 风格 调用:支持

微信小程序插件:支持,需要微信小程序基础库版本不低于 1.9.6

微信 Windows 版:支持

微信 Mac 版:支持

微信 鸿蒙 OS 版:支持

相关文档: 存储策略

功能描述

从本地缓存中异步获取指定 key 的内容。

参数

Object object

属性 类型 默认值 必填 说明 最低版本
key string 是 本地缓存中指定的 key
encrypt Boolean false 否 是否开启加密存储。只有异步的 getStorage 接口支持开启加密存储。开启后,将会对 data 使用 AES128 解密,接口回调耗时将会增加。若开启加密存储,setStorage 和 getStorage 需要同时声明 encrypt 的值为 true 2.21.3
success function 否 接口调用成功的回调函数
fail function 否 接口调用失败的回调函数
complete function 否 接口调用结束的回调函数(调用成功、失败都会执行)

object.success 回调函数

参数
Object res
属性 类型 说明
data any key对应的内容

示例代码

wx.getStorage({
  key: 'key',
  success (res) {
    console.log(res.data)
  }
})
// 开启加密存储
wx.setStorage({
  key: "key",
  data: "value",
  encrypt: true, // 若开启加密存储,setStorage 和 getStorage 需要同时声明 encrypt 的值为 true
  success() {
    wx.getStorage({
      key: "key",
      encrypt: true, // 若开启加密存储,setStorage 和 getStorage 需要同时声明 encrypt 的值为 true
      success(res) {
        console.log(res.data)
      }
    })
  }
})

wx.getStorageInfo(Object object)

以 Promise 风格 调用:支持

微信小程序插件:不支持

微信 Windows 版:支持

微信 Mac 版:支持

微信 鸿蒙 OS 版:支持

相关文档: 存储策略

功能描述

异步获取当前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)
  }
})
try {
  const res = wx.getStorageInfoSync()
  console.log(res.keys)
  console.log(res.currentSize)
  console.log(res.limitSize)
} catch (e) {
  // Do something when catch error
}

Object wx.getStorageInfoSync()

以 Promise 风格 调用:支持

微信小程序插件:不支持

微信 Windows 版:支持

微信 Mac 版:支持

微信 鸿蒙 OS 版:支持

相关文档: 存储策略

功能描述

wx.getStorageInfo 的同步版本

返回值

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
}

wx.getStorageSync(string key)

微信小程序插件:支持,需要微信小程序基础库版本不低于 1.9.6

微信 Windows 版:支持

微信 Mac 版:支持

微信 鸿蒙 OS 版:支持

相关文档: 存储策略

功能描述

从本地缓存中同步获取指定 key 的内容。

参数

string key

本地缓存中指定的 key

返回值

any

key对应的内容

注意

storage 应只用来进行数据的持久化存储,不应用于运行时的数据传递或全局状态管理。启动过程中过多的同步读写存储,会显著影响启动耗时。

示例代码

try {
  var value = wx.getStorageSync('key')
  if (value) {
    // Do something with return value
  }
} catch (e) {
  // Do something when catch error
}