js将金额专成每隔3位数加逗号,比如 12345.00 转成 12,345.00;

懒得解释具体代码如下

 //分割
String.prototype.joinByNum = function(num, deli){
(typeof num == 'undefined' || num == 0 || num == '' ) && (num = 3);
(typeof deli == 'undefined' || deli == '') && (deli = ',');
var oristr = this.toString().replace(/^\s*|\s*$|¥|,/g, ''),//去除了一些特殊符号以及空格
i = oristr.length - 1,
lastIndex = oristr.lastIndexOf('.'),
str = '',
index = 0;
if(isNaN(oristr)) return oristr;
(lastIndex !== -1) && (i = lastIndex - 1);
for (; i >= 0; i--) {
str = oristr[i] + str;
if ( i !== 0 && ++index % num === 0) {
str = deli + str;
}
}
str += lastIndex !== -1 ? (function(){
return Number(oristr.substr(lastIndex)).toFixed(2).substr(1);
})() : '.00'; return str;
}; //钱分割
Number.prototype.joinByNum = function(){
return ''.joinByNum.apply(''+ this, arguments);
};

测试结果:

old:789456123.22
new:789,456,123.22

old:10154344
new:10,154,344.00

貌似num里有个方法,所以又改了下。注意:这个toLocaleString貌似有点问题。比如safari就不会转。

//钱分割
Number.prototype.fomatMoney = function(){
var str = this.toLocaleString(),
arr = str.split('.');
if (arr.length < 2) {
str = arr[0]+ '.00';
}else{
str = arr[0] + Number(arr[1]).toFixed(2).substr(1);
}
return str;
};
//钱分割
String.prototype.fomatMoney = function(){
var oristr = this.toString();
if(oristr.indexOf(',') !== -1) return oristr;
return (0).fomatMoney.apply(Number(oristr), arguments);
};

js将金额专成每隔3位数加逗号的更多相关文章

  1. js金额数字格式化实现代码(三位加逗号处理保留两位置小数)

    工作中很常用的东西: 例1,使数字1111111变成11,111,111.00,保留两位小数. <html> <head> <script type="text ...

  2. 【Java】【14】从后往前每隔n位加逗号(用于货币)

    1,String类型的数据 /** * @param strValue 待处理的数 * @param num 隔的位数 */ public static String separateStr(Stri ...

  3. js将金额转成大写金额

    function Chinese(){ /* var num= $(dialogStruct.iframe.contentDocument.getElementById("contractA ...

  4. JS把数字金额转换成中文大写数字的函数

    //把数字金额转换成中文大写数字的函数 function num2rmb ($num){ $c1="零壹贰叁肆伍陆柒捌玖"; $c2="分角元拾佰仟万拾佰仟亿" ...

  5. C#小写数字金额转换成大写人民币金额的算法

    C#小写数字金额转换成大写人民币金额的算法 第一种方法: using System.Text.RegularExpressions;//首先引入命名空间 private string DaXie(st ...

  6. JavaScript将输入的数字金额转换成对应的中文大写金额

    // 将输入的数字金额转换成对应的中文大写金额 // idNumber输入的数字金额,idCHN输出的中文大写金额 function TransformNumberIntoCHN(idNumber, ...

  7. PHP算法--将数字金额转换成大写金额

    最近在看一些PHP算法题,遇到一个将数字金额转换成大写金额的小算法题,这里贴出自己的一个例子. 注:这个小算法适用于10万以内的金额. <?php //$num = 12345.67; func ...

  8. SQL函数:小写金额转换成大写

    /********************************************************作者:版本:1.0创建时间:20020227修改时间:功能:小写金额转换成大写参数:n ...

  9. js将字符串转化成函数:eval(logOutCallbackFun+"()");

    js将字符串转化成函数:eval(logOutCallbackFun+"()");

随机推荐

  1. iOS GCD NSOperation NSThread等多线程各种举例详解(拷贝)

    2年多的iOS之路匆匆而过,期间也拜读来不少大神的博客,近来突然为自己一直做伸手党感到羞耻,是时候回馈社会.回想当年自己还是小白的时候,照着一些iOS多线程教程学,也只是照抄,只知其然.不知其所以然. ...

  2. 轮播图适应代码jQ

    (function(){ var i = 0; var time ; $('.page-size').html('1'); var obj = $('.xst-scroll>li'); var ...

  3. as3 代码优化之pmd

    首先下载com.abobe,ac.pmd.eclipse_...jar 和 flex-pmd-all-in-one...zip俩文件 前面一个装在xx\adobe flash builder xx\e ...

  4. oracle 用户创建这个挺靠谱

    CREATE TEMPORARY TABLESPACE test_tempTEMPFILE 'C:\oracle\product\10.1.0\oradata\orcl\test_temp01.dbf ...

  5. 对vector<int>进行快速排序

    #include <iostream>#include <string>#include <vector>using namespace std;void Quic ...

  6. git clone错误

    git clone错误 Initialized empty Git repository in ***/.git/ error: The requested URL returned error: 4 ...

  7. 批处理——putCMAC小版本

    @ECHO off del telcc.vbs del telcc.bat del ftp1.txt del ftp1.bat @echo off setlocal enabledelayedexpa ...

  8. Ubuntu下libpcap安装

    1.首先按下面的博客教程下载和安装四个软件包: 点击打开链接 2.这四个软件都安装好之后按下面教程新建Makefile文件和test.c文件: 点击打开链接 Makefie: all: test.c ...

  9. CLR线程池

    WaitCallback 表示要在 ThreadPool 线程上执行的回调方法. 创建委托,方法是将回调方法传递给 WaitCallback 构造函数. 您的方法必须具有此处所显示的签名. 如果想使用 ...

  10. deProto原型设计工具

    现有的原型工具,比如axure rp等等,都或多或少存在一些使用比较复杂的问题.以至于常常属于少数的产品经理的技能型工具. 在业余的时候,自己凭借兴趣开发了这个工具.希望能够以更简便的方法制作一个de ...