今天想判断一个表单中获取的值是否为数字的时候,使用了typeof num === 'number'
,但却没有生效。
百度了一下发现微信小程序不支持这个功能,只能自己利用正则实现,参照了网上的代码:
function isNumber(val) {
var regPos = /^\d+(\.\d+)?$/; //非负浮点数
var regNeg = /^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$/; //负浮点数
if (regPos.test(val) || regNeg.test(val)) {
return true;
} else {
return false;
}
}
将这个函数放进/utils/util.js
中当作工具函数来用,要用的时候导入就行了。