格式化金额 unitTransform

/*** 数据单位处理, 新增函数导出 20200813 by djq* @param {*} num* @param {*} n*/
export function unitTransform(num, n) {if (num === 0) return 0;if (num) {const TEN_THOUSAND = 10 ** 4; // 万const HUNDRED_MILLION = 10 ** 8; // 亿const TEN_THOUSANDHUNDRED_MILLION = 10 ** 12; // 万亿if (num >= TEN_THOUSANDHUNDRED_MILLION) {return `${formatNumber(num / TEN_THOUSANDHUNDRED_MILLION, n)} 万亿`;} if (num >= HUNDRED_MILLION) {return `${formatNumber(num / HUNDRED_MILLION, n)} 亿`;} if (num >= TEN_THOUSAND) {return `${formatNumber(num / TEN_THOUSAND, n)} 万`;}return formatNumber(num, n);}return '-';
}
/*** 新货币*/
export function formatCurrency(value) {if (!value.num) return '-';// 如果有original 优先展示original字段if (value?.original) {return `${value.currency} ${value.original}`;}// 负数处理if (value.num.startsWith('-')) {return `${value.currency} -${unitTransform(value.num.slice(1))}`;}if (value.num.includes('.')) {return `${value.currency} ${unitTransform(value.num, value.num.split('.')[1].length)}`;}return `${value.currency} ${unitTransform(value.num)}`;
}

将数字转换为大写 方法一 number_chinese()

function number_chinese(str) {var num = parseFloat(str);var strOutput = "",strUnit = '仟佰拾亿仟佰拾万仟佰拾元角分';num += "00";var intPos = num.indexOf('.');  if (intPos >= 0){num = num.substring(0, intPos) + num.substr(intPos + 1, 2);}strUnit = strUnit.substr(strUnit.length - num.length);for (var i=0; i < num.length; i++){strOutput += '零壹贰叁肆伍陆柒捌玖'.substr(num.substr(i,1),1) + strUnit.substr(i,1);}return strOutput.replace(/零角零分$/, '整').replace(/零[仟佰拾]/g, '零').replace(/零{2,}/g, '零').replace(/零([亿|万])/g, '$1').replace(/零+元/, '元').replace(/亿零{0,3}万/, '亿').replace(/^元/, "零元")}

将数字转换为大写 方法二 digitUppercase()

/*  eslint-disable */
export default function digitUppercase (n) {var fraction = ['角', '分'];var digit = ['零', '壹', '贰', '叁', '肆','伍', '陆', '柒', '捌', '玖'];var unit = [['元', '万', '亿'],['', '拾', '佰', '仟']];var head = n < 0 ? '负' : '';n = Math.abs(n);var s = '';for (var 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 (var i = 0; i < unit[0].length && n > 0; i++) {var p = '';for (var 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;}return head + s.replace(/(零.)*零元/, '元').replace(/(零.)+/g, '零').replace(/^整$/, '零元整');
}

格式化代码 format.js相关推荐

  1. vscode中怎样格式化js代码_如何在Visual Studio代码(VSCode)中格式化代码

    回答(30) 2 years ago 对于那些想要自定义要格式化的JavaScript文件的人,可以使用 JSfiles 属性上的任何扩展名同样适用于HTML . { "beautify.o ...

  2. 使用 dotnet format 格式化代码

    使用 dotnet format 格式化代码 Intro dotnet-format 在之前的版本是一个独立的命令行工具,在 .NET 6 里已经成为了 SDK 的一部分,我们可以使用,使用 dotn ...

  3. 前端项目中使用js-beautify格式化、美化js代码

    前端项目中使用js-beautify格式化.美化js代码 1.js-beautify介绍 很多网站的js,html,css代码做了混淆处理,导致难以阅读,这个时候js-beautify工具就可以派上用 ...

  4. js显示格式化代码并高亮(vue中实现代码高亮)

    文章目录 js 实现代码格式化 调用 api 实现代码高亮 引入 用法 highlight.js 高亮代码不换行 innerText 和 innerHTML 有什么区别 解决 innerHTML 渲染 ...

  5. vscode中怎样格式化js代码_VSCode插件JS-CSS-HTML Formatter自动格式化代码

    VSCode插件JS-CSS-HTML Formatter自动格式化代码 当你Ctrl+S保存代码时,自动格式化代码.本来很好用,但是修改thinkphp模板文件时,就有问题了.因为js代码里面,调用 ...

  6. VsCode使用Ctrl+S保存代码自动格式化Html/Css/JS

    第一步:点击文件-首选项-设置(快捷键:Ctrl + ,) 第二步:在搜索框里面输入emmet,选择工作区 点击 在settings.json 中编辑(红色框的地方) 第三步,在settings.js ...

  7. sublime自动识别html代码格式,Sublime Text3格式化html/css/js代码以及快捷键的查看与设置...

    本篇文章主要介绍在Sublime Text3中如何进行代码的格式化,以及去查看和设置Sublime默认的快捷键和插件的快捷键. 一.格式化html.css.js代码 1)首先我们使用Sublime自带 ...

  8. JS格式化代码和高亮显示

    前端开发中经常遇到了一个需要,即在页面上显示一些代码.这时候就需要考虑在前端对某些代码进行格式化处理,比如压缩过的JS.格式化之后,为了显示效果,需要进行代码高亮. 为解决这两个问题,引入两个常用库. ...

  9. vsCode 设置vue 保存自动格式化代码

    setting {// vscode默认启用了根据文件类型自动设置tabsize的选项"editor.detectIndentation": false,// 重新设定tabsiz ...

最新文章

  1. 别光顾着背单词了,每天花18分钟做这件事,英语水平暴增!
  2. javascript经典实例_提升JavaScript变量的方法有哪些?
  3. 寻找正反物质世界边境的长城---兵粒子
  4. 利用ssh反向代理以及autossh实现从外网连接内网服务器
  5. Qualitative and Quantitative
  6. matlab复数向极坐标转换_Matlab 图像转极坐标系
  7. 运动目标跟踪(二)--搜索算法预测模型之粒子滤波
  8. 51单片机C语言堆栈,《单片机C语言试题》(一)20101027
  9. ‘gperf‘ is missing on your system.
  10. 【MacOs系统-M2安装2022新版AWVS渗透工具】-保姆级安装教程
  11. 如何用AutoRunner录制IE脚本录制
  12. PHP代码审计入门学习过程
  13. 坚持连续背单词一年是什么体验
  14. 微光互联 TX800-U 扫码器无法输出中文到光标的问题
  15. PPT文件不能编辑的原因,可能不是编辑限制
  16. windows下gromacs中文教程(simulate chain A of insulin (PDB ID: 1ZNI).
  17. 超详细——入门Github的代码上传
  18. Oracle导出数据库数据为dmp文件(存在空表情况)
  19. 数据结构实验-学生信息表
  20. 二进制小数转换为十进制数和

热门文章

  1. 全网页CSS 超链接无下划线
  2. 【KATA练习日记】关于std::accumulate的使用
  3. 证明:矩阵不同特征值对应的特征向量之间线性无关
  4. html翻译插件,vscode系列: 做个五脏俱全的翻译插件
  5. PM - 软件版本命名规范及各阶段说明
  6. html搜索栏热搜效果,CSS3实战开发:百度新闻热搜词特效实战开发_html/css_WEB-ITnose...
  7. 靶机10 DC-9(过程超详细)
  8. android chrome72,Chrome 72正式版发布
  9. 视频监控存储特点分析
  10. Java银行柜员业务绩效考核系统(含源码+论文+答辩PPT等)