问题模块 | 框架类型 | 终端类型 | 微信版本 | 基础库版本 |
---|---|---|---|---|
框架 | 小程序 | 工具 | 微信开发者工具v1.02.1801081 | Array |
定义一个数组,希望能像JavaScript中那样,使用push()方法往数组的后部添加数组,编译提示 push is not a function。
经过调试发现Array类型的内置方法都放在keys属性下。一个array类型的变量调用push()方法之前,先要调用keys属性。
var cartInfo = wx.getStorageInfoSync(this._storageKey); //第一次没有缓存
if (typeof (cartInfo) == 'undefined') {
cartInfo = [];
}
cartInfo.keys.push(productData);
为什么要这样
网友回复
Sneijder:
问题找到了。获取缓存的接口用错了。应该使用wx.getStorageSync()。获取指定key的缓存信息
用wx.getStorageInfoSync()获取整个storage的信息
WGinit:
应该用concat吧