`

金额显示的千位计数等集中常用js

    博客分类:
  • js
js 
阅读更多
function f(s, n) {
    // 保留20位以内的小数位
    n = n > 0 && n <= 20 ? n : 2; 
 
    // 这里 +'' 的含义是把数字转化为字符串, 正则里面的 \. \- 表示小数点和负号
    // 删除掉s中非数字小数点或负号的字符
    s = parseFloat((s + "").replace(/[^\d\.-]/g, "")).toFixed(n) + ""; 
 
    // split('.') 作用以小数点把数字拆分为整数部分和小数部分
    // l 是浮点数的左边部分也就是整数部分,r 为小数部分
    // 比如 s = -123456.789; s.split('.') => ['-123456', '789']
    // split('') 作用是将字符串拆分为单个字符的数组 
    // '-123456.789'.split('.')[0].split('') => ['-','1','2','3','4','5','6']
    // .reverse() 颠倒顺序 ['-','1','2','3','4','5','6'].reverse() => ['6','5','4','3','2','1','-']
    var l = s.split(".")[0].split("").reverse(), 
        r = s.split(".")[1]; // '789'
 
    // .indexOf() 判断字符串中是否包含某个字符串, 如果不包含则返回-1
    // 此处判断数字中是否有负号 有负号就说明整数部分数字的长度要减一
    // 上例 l.length = 7 但是有负号 所以 len = 6
    var len = (s.indexOf("-")!= -1) ? l.length - 1 : l.length;
 
    t = "";
    // 
    for (i = 0; i < len; i++) 
    {
        // l = ['6','5','4','3','2','1','-']
        // 此处通过对 i + 1 做余数运算来判断插入逗号的位置
        // (i + 1) % 3 == 0 每三位插入一个逗号
        // (i + 1) != len 数字最开头不用打逗号
        // 结果:t = '654,321'
        t += l[i] + ((i + 1) % 3 == 0 && (i + 1) != len ? "," : ""); //没看懂呀   并且这两个条件 举个例子
 
    }
 
    // 有负号就在开头加上负号
    // 然后把顺序颠倒回来 把小数部分连接回来
    // '-123,456.789'
    return ((s.indexOf("-")!= -1) ? "-" : "") + t.split("").reverse().join("") + "." + r; //这个返回 举个例子 没懂呀
 
}

 

 

分享到:
评论

相关推荐

    ORACLE中科学计数法显示问题的解决

    "ORACLE中科学计数法显示问题的解决" 在 Oracle 中,科学计数法显示问题是一个常见的问题,特别是在 PLSQL 中显示超长数字的时候,会出现科学计数法的显示格式。本文档将为解决这个问题提供解决方法。 在 Oracle ...

    实验五-1位十进制可逆计数,译码,显示电路设计.docx

    3. 数码管显示:数码管显示是一种常用的显示方式,使用LED显示十进制数或十六进制数。 4. 可逆计数:可逆计数是一种计数方式,能够实现加减运算和清零功能。 5. 译码:译码是一种将十进制数转换为七段数码管显示的...

    数码管显示自动计数函数

    为了同时显示多个数码管(比如显示两位数字),可能需要采用动态扫描或静态显示等方法,以节省I/O端口资源。 在项目实现过程中,"说明.txt"和"cff"可能是源代码文件或项目文档。"cff"可能代表汇编代码文件或特定...

    PL/SQL中查询Oracle大数(17位以上)时显示科学计数法的解决方法

    特别是在Oracle数据库中,当涉及到17位以上的数字时,可能会出现一个问题:这些大数在查询结果中会以科学计数法的形式显示,而不是常规的数字格式。这不仅会影响数据的可读性,也可能导致后续的数据处理出现错误。...

    实验七_计数、译码、显示 实验报告答案

    ### 实验七_计数、译码、显示 实验报告答案 #### 一、实验目的和要求 本次实验旨在让同学们掌握以下几点: 1. **熟悉中规模集成电路计数器的功能及应用**:通过实际操作了解74LS160等中规模集成电路的基本功能,...

    (3) 实验 计数译码显示电路(设计).docx

    实验3的焦点是计数译码显示电路的设计,主要涵盖了计数器和译码器的原理与应用。计数器是数字系统中的基础组件,它能够统计脉冲的数量,同时在分频、定时和计算中起到重要作用。74LS90是一种常用的中规模集成电路,...

    单片机脉冲计数和显示

    根据给定文件中的标题“单片机脉冲计数和显示”、描述及部分内容,本文将详细介绍如何利用单片机实现脉冲信号的计数与显示功能。 ### 一、项目背景与目标 #### 项目背景 在工业自动化、测量仪器等领域中,经常需要...

    D39.威纶通科学计数法示例程序.rar

    3. **屏幕元素配置**:在触摸屏界面设计阶段,需设置文本框或标签元素来显示科学计数法格式的数值,可能需要调整字体大小、对齐方式和颜色等属性。 4. **实时更新**:如果数值是动态变化的,需要编写相应的逻辑,...

    最新单片机仿真 将计数器T0计数的结果送P1口8位LED显示

    最新单片机仿真 将计数器T0计数的结果送P1口8位LED显示最新单片机仿真 将计数器T0计数的结果送P1口8位LED显示最新单片机仿真 将计数器T0计数的结果送P1口8位LED显示最新单片机仿真 将计数器T0计数的结果送P1口8位LED...

    (Multisim数电仿真指导)计数、译码和显示电路

    2. **熟悉中规模集成计数器及译码驱动器的逻辑功能和使用方法**:学习如何利用CD4017和CD4510等集成电路进行计数、译码和显示的操作。 #### 实验准备: 1. **计数**:计数器按照不同的标准可以分为多种类型,比如...

    计数译码显示电路设计

    在电子技术领域,计数译码显示电路被广泛应用于各种场合,如时钟、计数器等。这类电路通常用于将数字信号转换为直观易读的形式。本文将详细介绍一个具体的计数译码显示电路设计案例,并对其工作原理进行深入剖析。 ...

    51单片机实现 定时器计数 数码管显示0到99.rar

    在这个项目中,我们将探讨如何利用51单片机的定时器T0的计数功能来实现两位数码管动态显示0到99。这一知识点在嵌入式系统开发、电子设计竞赛以及教学实践中都有广泛的应用。 首先,51单片机的定时器T0是一个可编程...

    实验7_计数、译码、显示综合实验

    数电实验册实验7_计数、译码、显示综合实验答案

    (Multisim数电仿真)计数、译码和显示电路Word版.docx

    实验3.11主要关注的是数字电子技术中的计数、译码和显示电路,这些是数字系统设计的基础组件。在本实验中,学生将通过Multisim软件进行计算机仿真,以便理解和掌握相关概念。 计数电路是数字系统中的重要部分,用于...

    完美解决python中ndarray 默认用科学计数法显示的问题

    当处理的数据量较大或者数值范围较宽时,ndarray默认使用科学计数法来显示数据,这样做既节省空间又方便查看,但在某些情况下我们可能不希望数据显示为科学计数法,而是希望以完整格式展示数据。本文将详细介绍如何...

    数码管对按键次数计数

    * 系统实现:使用汇编语言编写程序,包括显示程序、加减计数程序、快加快减程序、中断、延时程序、按键消抖程序等,并在WAVE中调试运行,并利用PROTEUS作出仿真图仿真。 知识点6:系统优势 * 系统的优势:高精度、...

    客车计数与显示报警

    【客车计数与显示报警系统】是一种用于客车的智能安全装置,旨在实时监控客车的载客...通过集成红外技术、微处理器和语音提醒等功能,客车计数与显示报警系统实现了智能化的乘客人数监控,为客车运营提供了可靠的保障。

    VHDL计数显示电路

    西电VHDL作业文档,VHDL的计数显示电路,三位显示

    pb 把数字转换为科学计数

    在 PowerBuilder(PB)开发环境中,处理数字的显示格式,特别是科学计数法,是常见的需求。本篇文章将深入探讨如何在 PowerBuilder 中实现数字到科学计数法的转换,以及反过来,将科学计数法转换回数字。 一、数字...

    2019年电赛F题_纸张计数显示装置.rar

    这个题目聚焦于设计和实现一个能够精确计数并显示纸张数量的设备,这涉及到电子技术、传感器应用、信号处理以及显示技术等多个领域的知识点。 【描述】"2019年电赛F题——纸张计数显示装置,2019年国赛!!!!" ...

Global site tag (gtag.js) - Google Analytics