网站搜索内容关键词变色 JS实现唤醒浏览器打印功能/JS批量打印 获取URL参数与判断是否包含某个参数 JS数组中插入json和删除数组中指定值 网页唤醒app:若不存在则下载 解决window.open被拦截问题 js拼接多json数组 两个数组对比,去重 正则表达式 姓名,前两个字变为*号 input操作 阿拉伯数字转大写 数字转大写 js获取本月所有周六日 获取本月1号到昨天的日期 单页面Vue应用 数组or字符串操作 JS复制文本

数字转大写

首页 > 前端开发 > javascript 更新日期:2023-10-15 10:34:10

函数

function transCnMoney(number) {
	var CN_MONEY = "";
	var CN_UNIT = "仟佰拾亿仟佰拾万仟佰拾元角分";
	number = parseFloat(number)
		.toFixed(2)
		.toString(); //浏览器默认为整数型,将数字转为2位有效数字的float类型再转为字符串
	var dot = number.indexOf('.'); //将从小数点开始分开
	if (dot >= 0) {
		number = number.substring(0, dot) + number.substr(dot + 1, 2);
		CN_UNIT = CN_UNIT.substr(CN_UNIT.length - number.length);
		for (var i = 0; i < number.length; i++) {
			CN_MONEY += '零壹贰叁肆伍陆柒捌玖'.substr(number.substr(i, 1), 1) + CN_UNIT.substr(i, 1);
		}

		return CN_MONEY.replace(/零角零分$/, '整')
			.replace(/零[仟佰拾]/g, '零')
			.replace(/零{2,}/g, '零')
			.replace(/零([亿|万])/g, '$1')
			.replace(/零+元/, '元')
			.replace(/亿零{0,3}万/, '亿')
			.replace(/^元/, "零元");
	} else {

	}
}

用法

transCnMoney(500.00)

结果

伍佰元整


标题导航