刚写的一个用JavaScript格式化数字的函数

简介:  1 /**   2  * 格式化数字   3  * Author : Z,Mingyu   4  * 参数:   5  *      prmNum (Number) : 要格式化的数字   6  *      prmPtn (String) : 格式化规则,例如:#,##0.00   7  *    * prmNullValue    : 当要格式化的数字为null、空或非数字时,返回的结果。
 1  /* *  
 2   * 格式化数字  
 3   * Author : Z,Mingyu  
 4   * 参数:  
 5   *      prmNum (Number) : 要格式化的数字  
 6   *      prmPtn (String) : 格式化规则,例如:#,##0.00  
 7   *    * prmNullValue    : 当要格式化的数字为null、空或非数字时,返回的结果。默认为0  
 8    */    
 9    function  formatNum(prmNum,prmPtn,prmNullValue){   
10       var  nullValue  =  prmNullValue  ?  prmNullValue :  0 ;   
11       if (prmNum  ==   ""   ||  prmNum  ==   null return  nullValue;   
12      prmNum  =  prmNum.replace( / \, / g, "" );   
13       if (isNaN(prmNum))  return  nullValue;   
14       if (prmPtn  ==   ""   ||  prmPtn  ==   null return  prmNum;   
15       var  ptnLen  =  prmPtn.length;   
16       var  pointIndex  =  prmPtn.indexOf( " . " );   
17       var  groupIndex  =  prmPtn.indexOf( " , " );   
18       var  pointLen  =  (pointIndex  ==   - 1   ?   0  : ptnLen  -  pointIndex  -   1 );   
19      prmNum  =  parseFloat(prmNum).toFixed(pointLen)  +   "" ;   
20       if (groupIndex  !=   - 1 ){   
21           if (pointIndex  ==   - 1 ) pointIndex  =  ptnLen;   
22           var  len  =  pointIndex  -  groupIndex  -   1 ;   
23           var  reg  =   new  RegExp( " (-?\\d+)(\\d{ " + len + " }) " );   
24           while (reg.test(prmNum)) prmNum  =  prmNum.replace(reg, " $1,$2 " );   
25      }   
26       return  prmNum;   
27  }  

 


宠辱不惊,看庭前花开花落;去留无意,望天上云卷云舒
目录
相关文章
|
22天前
|
JavaScript
变量和函数提升(js的问题)
变量和函数提升(js的问题)
|
22天前
|
JavaScript
常见函数的4种类型(js的问题)
常见函数的4种类型(js的问题)
11 0
|
23天前
|
JavaScript
写一个函数将N组<>(包含开始和结束),进行组合,并输出组合结果 (js)
写一个函数将N组<>(包含开始和结束),进行组合,并输出组合结果 (js)
9 0
|
1月前
|
自然语言处理 JavaScript 网络架构
js开发:请解释什么是ES6的箭头函数,以及它与传统函数的区别。
ES6的箭头函数以`=>`定义,简化了函数写法,具有简洁语法和词法作用域的`this`。它无`arguments`对象,不能用作构造函数,不支持`Generator`,且不改变`this`、`super`、`new.target`绑定。适用于简短表达式,常用于异步编程和高阶函数。
18 5
|
1月前
|
JavaScript 前端开发 网络架构
JavaScript 谈谈对箭头函数的理解及其与普通函数的区别。
JavaScript 谈谈对箭头函数的理解及其与普通函数的区别。
18 1
|
18天前
|
JSON JavaScript 前端开发
设置WebStorm像VSCode一样每行代码结尾自动格式化加入“;”分号(JavaScript、TypeScript格式化)
设置WebStorm像VSCode一样每行代码结尾自动格式化加入“;”分号(JavaScript、TypeScript格式化)
|
2天前
|
JavaScript 前端开发
js开发:请解释什么是ES6的Generator函数,以及它的用途。
ES6的Generator函数是暂停/恢复功能的特殊函数,利用yield返回多个值,适用于异步编程和流处理,解决了回调地狱问题。例如,一个简单的Generator函数可以这样表示: ```javascript function* generator() { yield 'Hello'; yield 'World'; } ``` 创建实例后,通过`.next()`逐次输出"Hello"和"World",展示其暂停和恢复的特性。
12 0
|
9天前
|
缓存 JavaScript 前端开发
js的入口函数,入口函数的作用
js的入口函数,入口函数的作用
15 4
|
24天前
|
存储 前端开发 JavaScript
JavaScript如何封装一些常见的函数来提高工作效率
通过封装这些常见函数,你可以在项目中重复使用,提高代码的复用性和工作效率。这些函数包括获取元素、发起Ajax请求、处理本地存储、日期格式化、定时器等功能,可以在不同场景中减少重复的代码编写。
7 0
JavaScript如何封装一些常见的函数来提高工作效率
|
1月前
|
JavaScript
js开发:请解释什么是ES6的Generator函数,以及它的用途。
ES6的Generator函数是暂停恢复的特殊函数,用yield返回多个值,适用于异步编程和流处理,解决了回调地狱问题。
16 6