1、不同于普通的C#和Java等高级语言,js中的变量不能在变量申明初始化时调用函数为其赋值,这可能是源于其是解释性语言有关,初始化变量并赋值时,无法找到方法引用,方法也在初始化。可以进行变量初始化赋值后,在具体调用方法时,传递这个变量参数。
const defaultStr = "12345678";
//const defaultArray = CryptoJs.enc.Utf8.parse("12345678");//没法这样,然后直接在下面方法中返回defaultArray
function MethodPrefrence() {//外部要调用的方法
...
return StringOperator();
}
function StringOperator() {
return CryptoJs.enc.Utf8.parse(defaultStr);
}
2、小程序数组对象更新后,界面要更新改数组对象,需要通过this.setData赋值语句,简单的this.data.变量的方式无法更新到界面上。
//没用,界面不更新
this.data.recordsList = this.data.recordsList.sort(this.compare("sum"))
//这样界面才刷新
var newList = this.data.recordsList.sort(this.compare("sum"))
this.setData({
recordsList:newList
})
3、小程序开发中,某些机型是不支持“2021-02-20”这种格式的时间的。解决方案如下:
let data = e.detail.value; // 获取时间
let time = new Date(data.replace(/-/g, '/'));
time = Date.parse(time)