filters.js 1.31 KB
// 为空处理  return ‘-’
const tranNull = value => {
	if (value === null || value === undefined || value === '') return '-'
	return value
}


/*
    @切割字符串
    @str原字符串
    @num字符位数
*/
const cutString = (str, num) => {
	var _str = "";
	if (str == null) {
		return "";
	}
	if (str.length >= num) {
		var strN = str.substring(0, num);
		strN += "...";
		_str = strN;
	} else {
		_str = str;
	}
	return _str;
}

// 钱前面加“¥”
const RMB = (value) => {
	if (value === '--' || value === null || value === undefined) return value
	return `¥${value}`
}

// 钱保留两位小数
const toFixed2 = num => {
	return isNaN(num) ? 0.00 : parseFloat((num/100).toFixed(2));
}

// 数字每三位加个逗号
const toThousands =(num)=> {
    var result = [],
      counter = 0;
    num = (num || 0).toString().split('');
    for (var i = num.length - 1; i >= 0; i--) {
      counter++;
      result.unshift(num[i]);
      if (!(counter % 3) && i != 0) {
        result.unshift(',');
      }
    }
    return result.join('');
  }
 
 // 根据身份证号码判断男女
 const sexFilter = value => {
 	if (!value) {
 	    return ''
 	} else {
 	    let data = value.substr(16, 1) % 2 === 1 ? '男' : '女'
 	    return data
 	}
 }

export default {
	tranNull,
	RMB,
	cutString,
	toFixed2,
	toThousands,
	sexFilter,
}