|
/**
|
* 判断字符串空
|
* @param {Object} str
|
*/
|
export function isBlank(str) {
|
if (str === undefined || str === null || str === '' || str === 'null' || str.length == 0) {
|
return true
|
} else {
|
return false
|
}
|
}
|
/**
|
* 两数相乘 arg1 * arg2
|
* @Date 2020/5/9 13:19
|
**/
|
export function accMul(arg1, arg2) {
|
let t = 0
|
arg1 = arg1 ? arg1.toString() : '0'
|
arg2 = arg2 ? arg2.toString() : '0'
|
if (arg1.includes('.')) {
|
t += arg1.split('.')[1].length
|
}
|
if (arg2.includes('.')) {
|
t += arg2.split('.')[1].length
|
}
|
const r1 = Number(arg1.replace('.', ''))
|
const r2 = Number(arg2.replace('.', ''))
|
return (r1 * r2) / Math.pow(10, t)
|
}
|
|
/**
|
* 两数相除 arg1 / arg2
|
* @Date 2020/5/9 13:18
|
**/
|
export function accDiv(arg1, arg2) {
|
let t = 0
|
arg1 = arg1 ? arg1.toString() : '0'
|
arg2 = arg2 ? arg2.toString() : '0'
|
if (arg2.includes('.')) {
|
t = arg2.split('.')[1].length
|
}
|
if (arg1.includes('.')) {
|
t -= arg1.split('.')[1].length
|
}
|
const r1 = Number(arg1.replace('.', ''))
|
const r2 = Number(arg2.replace('.', ''))
|
return accMul((r1 / r2), Math.pow(10, t))
|
}
|
/**
|
* 判断非空
|
* @param {Object} str
|
*/
|
export function isNotBlank(str) {
|
return !isBlank(str)
|
}
|
|
/* 正整数 */
|
export function isInteger(number) {
|
const reg = /^[1-9]\d*$/
|
if (reg.test(number)) {
|
return true
|
} else {
|
return false
|
}
|
}
|
|
/* 判断是否为空 */
|
export function isEmpty(item) {
|
if (item === undefined || item === null || item === '') {
|
return true
|
}
|
return false
|
}
|
|
/* 校验价格,最多两位小数点 */
|
export function isPrice(price) {
|
const reg = /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/
|
if (reg.test(price)) {
|
return true
|
} else {
|
return false
|
}
|
}
|
|
/**
|
* 将元转换为分(如果可以转换,否则原值返回)
|
* @param val
|
* @returns {number|*}
|
*/
|
export function formatYuanToFen(val) {
|
if (isEmpty(val) || !isPrice(val)) {
|
return val
|
}
|
return parseFloat(val) * 100
|
}
|
|
/**
|
* 将分转换为元(如果可以转换,否则原值返回)
|
* @param val
|
* @returns {number|*}
|
*/
|
export function formatFenToYuan(val) {
|
if (isEmpty(val) || !isInteger(val)) {
|
return val
|
}
|
return parseFloat(val) / 100
|
}
|
/* 元转分 */
|
export function yuanToFen(amount) {
|
let fen = 0
|
if (!amount) {
|
return fen;
|
}
|
fen = accMul(amount,100)
|
console.log(amount,fen);
|
return fen
|
}
|
/* 分转元 */
|
export function fenToYuan(amount) {
|
if (!amount) {
|
return "0";
|
}
|
amount = amount.toString();
|
if (amount.length == 1) {
|
return parseFloat("0.0" + amount);
|
} else if (amount.length == 2) {
|
return parseFloat("0." + amount);
|
} else {
|
return parseFloat(amount.substring(0, amount.length - 2) + "." + amount.substring(amount.length - 2));
|
}
|
}
|
// 判断微信、支付宝 2微信 5支付宝 3其他
|
export function getPlat() {
|
// #ifdef H5
|
var ua = window.navigator.userAgent.toLowerCase();
|
//判断是不是微信
|
if (ua.match(/MicroMessenger/i) == 'micromessenger') {
|
return 2;
|
}
|
//判断是不是支付宝
|
if (ua.match(/AlipayClient/i) == 'alipayclient') {
|
return 5;
|
}
|
//判断是不是云闪付
|
if (ua.indexOf('unionpay/1.0') !== -1) {
|
return 15;
|
}
|
// #endif
|
// #ifdef MP-WEIXIN
|
return 2;
|
// #endif
|
// #ifdef MP-ALIPAY
|
return 5;
|
// #endif
|
return 3;
|
}
|