微信小程序中wx.setStorageSync与wx.setStorage的区别

wx.setStorageSync与wx.setStorage的区别

关于同步缓存和异步缓存的区别:

  • 同步缓存就是必须要同步方法处理完,程序才能继续向下执行。
  • 异步方法无论方法执行成功与否,都会继续向下执

wx.setStorage(Object object)是微信小程序异步缓存方法:

是一个获取缓存值异步方法,参数object包含Key,data和success(即缓存成功)、fail(缓存失败)、complete(即缓存完成)3个通用方法。只要是异步的方法都会有这3个通用方法。优点:将过程细化,在3个过程(3个通用方法)中可以进一步优化一功能。

wx.setStorage(OBJECT) 将数据存储在本地缓存中指定的 key 中,会覆盖掉原来该 key 对应的内容

wx.setStorage({ key:"key", data:"value" })

wx.getStorage(OBJECT) 从本地缓存中异步获取指定 key 对应的内容。

wx.getStorage({ key: 'key', success: function(res) { console.log(res.data) } })

wx.removeStorage(OBJECT) 从本地缓存中异步移除指定 key

wx.removeStorage({ key: 'key', success: function(res) { console.log(res.data) } })

微信小程序中以Sync(同步,同时)结尾的,都是都是同步缓存

wx.setStorageSync(string key, any data)是微信小程序同步缓存方法:

是异步获取缓存方法的反向,就是同步获取缓存(所有异步方法后缀加上Sync就是同步方法了)。同步缓存需要接受2个参数。同步方法没有success(即缓存成功)、fail(缓存失败)、complete(即缓存完成)3个通用方法。

wx.setStorageSync(KEY,DATA)

将 data 存储在本地缓存中指定的 key 中,会覆盖掉原来该 key 对应的内容,这是一个同步接口。

wx.getStorageSync(KEY)

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

wx.getStorageInfoSync

同步获取当前storage的相关信息

wx.removeStorageSync(KEY)

从本地缓存中同步移除指定 key 。

总结:

在微信小程序中,异步不管保没保存成功,程序都会继续往下执行.同步是等保存成功了,才会执行下面的代码.使用异步,性能会更好;而使用同步,数据会更安全。