~~~
/**
* 将数组的人民币转换为大写
* @param n 钱数
* @returns {string} 转为大写的人民币名称
*
* upDigit(168752632)
* ¥壹亿陆仟捌佰柒拾伍万贰仟陆佰叁拾贰元整"
*
* upDigit(-1682)
* -¥壹仟陆佰捌拾贰元整
*/
function upDigit(n) {
let fraction = ['角', '分', '厘'];
let digit = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖'];
let unit = [['元', '万', '亿'], ['', '拾', '佰', '仟']];
let head = n < 0 ? '¥-' : '¥';
n = Math.abs(n);
let s = '';
for (let i = 0; i < fraction.length; i++) {
s += (digit[Math.floor(n * 10 * Math.pow(10, i)) % 10] + fraction[i]).replace(/零./, '');
}
s = s || '整';
n = Math.floor(n);
for (let i = 0; i < unit[0].length && n > 0; i++) {
let p = '';
for (let j = 0; j < unit[1].length && n > 0; j++) {
p = digit[n % 10] + unit[1][j] + p;
n = Math.floor(n / 10);
}
//s = p.replace(/(零.)*零$/, '').replace(/^$/, '零')+ unit[0][i] + s;
s = p + unit[0][i] + s;
}
return head + s.replace(/(零.)*零元/, '元').replace(/(零.)+/g, '零').replace(/^整$/, '零元整');
}
~~~
- 代码片段
- 1.格式化银行卡
- 2.将HTML内容保存为图片
- 3.mui代码片段
- 1.粘贴内容
- 2.禁止tab左右滑动
- 3.判断网络状态
- 4.将图片压缩转换为base64
- 5.双击退出应用
- 6.二维码扫描
- 7.支持竖屏
- 4.时间戳格式化
- 5.字符串操作
- 1.去除字符串中的空格
- 2.计算字符串的长度
- 3.字符串转化
- 4. 复制字符串
- 5.替换字符串
- 6.字符串替换为 *
- 7.字符串检测
- 8 .生成字符串
- 9.检测一个字符在字符串中出现的次数
- 6.检测密码的等级强度
- 7.数组操作
- 1.数组去重函数
- 2.打乱数组的顺序
- 3.求数组的最大值和最小值
- 4.求一个数组的和 基于数字数组
- 5.求一个数组的平均数 基于数字数组
- 6. 随机获取数组中的一个元素
- 7.获取一个字符在一个字符串中出现的次数
- 8.截取数组长度
- 9.删除值为'val'的数组元素
- 8.cookie操作
- 9.格式化对象 清除对象中的空和null
- 10. 将数组的人民币转换为大写
- 11.URL操作
- 12.返回两个数之间的随机数
- 13.随机产生颜色值
- 14.获取到截止时间的时间
- 15.文件类型检测
- 16.判断是否是安卓或苹果
- 17.给文字加下划线
- 源码分析
- jQuery 1.2.6 源码阅读解读
- webpack插件总结
- css杂记
- css样式初始化
- JavaScript深入
- 1.JavaScript深入之从原型到原型链
- 2.JavaScript深入之词法作用域和动态作用域
- 3.JavaScript深入之执行上下文栈