没想到js将没有 金额千分之一格处理器类型(例子:1,234.01 这种格公式)。互联网搜索圈,我们使用的是常规方式。常规效率受宠若惊啊。和资源密集型,速度慢(虽然处理起来会很直观)。

因此专门写一个纯粹的数值符串个 金额千分位处理函数,并封装成jQuery函数包,处理时效率非常高,可高频率的使用。直接上代码。

还有min压缩版本号可点击连接下载。

假设你不是jQuery环境,直接把源代码拿出来,又一次封装到自己的函数中可以就能用。

源代码以及min包下载地址:jQuery.formatMoney.rar

/**
* 金额按千位逗号切割
* @character_set UTF-8
* @author Jerry.li(hzjerry@gmail.com)
* @version 1.2014.08.24.2143
* Example
* <code>
* alert($.formatMoney(1234.345, 2)); //=>1,234.35
* alert($.formatMoney(-1234.345, 2)); //=>-1,234.35
* alert($.unformatMoney(1,234.345)); //=>1234.35
* alert($.unformatMoney(-1,234.345)); //=>-1234.35
* </code>
*/
;(function($)
{
$.extend({
/**
* 数字千分位格式化
* @public
* @param mixed mVal 数值
* @param int iAccuracy 小数位精度(默觉得2)
* @return string
*/
formatMoney:function(mVal, iAccuracy){
var fTmp = 0.00;//暂时变量
var iFra = 0;//小数部分
var iInt = 0;//整数部分
var aBuf = new Array(); //输出缓存
var bPositive = true; //保存正负值标记(true:正数)
/**
* 输出定长字符串,不够补0
* <li>闭包函数</li>
* @param int iVal 值
* @param int iLen 输出的长度
*/
function funZero(iVal, iLen){
var sTmp = iVal.toString();
var sBuf = new Array();
for(var i=0,iLoop=iLen-sTmp.length; i<iLoop; i++)
sBuf.push('0');
sBuf.push(sTmp);
return sBuf.join('');
}; if (typeof(iAccuracy) === 'undefined')
iAccuracy = 2;
bPositive = (mVal >= 0);//取出正负号
fTmp = (isNaN(fTmp = parseFloat(mVal))) ? 0 : Math.abs(fTmp);//强制转换为绝对值数浮点
//全部内容用正数规则处理
iInt = parseInt(fTmp); //分离整数部分
iFra = parseInt((fTmp - iInt) * Math.pow(10,iAccuracy) + 0.5); //分离小数部分(四舍五入) do{
aBuf.unshift(funZero(iInt % 1000, 3));
}while((iInt = parseInt(iInt/1000)));
aBuf[0] = parseInt(aBuf[0]).toString();//最高段区去掉前导0
return ((bPositive)?'':'-') + aBuf.join(',') +'.'+ ((0 === iFra)? '00':funZero(iFra, iAccuracy));
},
/**
* 将千分位格式的数字字符串转换为浮点数
* @public
* @param string sVal 数值字符串
* @return float
*/
unformatMoney:function(sVal){
var fTmp = parseFloat(sVal.replace(/,/g, ''));
return (isNaN(fTmp) ? 0 : fTmp);
},
});
})(jQuery);

版权声明:本文博主原创文章,博客,未经同意不得转载。

js jquery版本号 金额千分之一转换功能(非规范,高效率)的更多相关文章

  1. 前端(js/jquery) 日期和时间戳的转换

    一.JavaScript中获取当前时间的时间戳 方法一: var timestamp=Date.parse(new Date()); ====>结果是:1451441086000 注:这种方式精 ...

  2. js jquery版本的 金额千分位转换函数(非正则,效率极高)

    没想到js里面没有 金额千分位格式化的处理函数(例:1,234.01 这样的格式),网上搜了一圈,都是使用正则的方式处理的.正则的效率不敢恭维啊,又耗费资源速度又慢(虽然处理起来会直观一些). 因此专 ...

  3. [js开源组件开发]数字或金额千分位格式化组件

    数字或金额千分位格式化组件 这次距离上一个组件<[js开源组件开发]table表格组件>时隔了一个月,由于最近的项目比较坑,刚挖完坑,所以来总结性提出来几个组件弥补这次的空缺,首先是金额和 ...

  4. 22-[jQuery]-选择器, js jQuery对象转换

    1.基础选择器 <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...

  5. js/jquery/html前端开发常用到代码片段

    1.IE条件注释 条件注释简介 IE中的条件注释(Conditional comments)对IE的版本和IE非IE有优秀的区分能力,是WEB设计中常用的hack方法.条件注释只能用于IE5以上,IE ...

  6. js/jQuery使用过程中常见问题

    目录 一.jQuery选择器选择选中的或者disabled的选择框时attr函数无效 二.jQuery each函数的break/continue 三.jQuery 获取元素的left会值/left数 ...

  7. [转]JS中对象与字符串的互相转换

    原文地址:http://www.cnblogs.com/luminji/p/3617160.html 在使用 JSON2.JS 文件的 JSON.parse(data) 方法时候,碰到了问题: thr ...

  8. JS中对象与字符串的互相转换

    在使用 JSON2.JS 文件的 JSON.parse(data) 方法时候,碰到了问题: throw new SyntaxError('JSON.parse'); 查询资料,大概意思如下: JSON ...

  9. JS Jquery去除数组重复元素

    js jquery去除数组中的重复元素 第一种:$.unique() 第二种: for(var i = 0,len = totalArray_line.length;i < len;i++) { ...

随机推荐

  1. discuz清空session,导致session保存机制失败,session无法更新与解决

    <?php function userErrorHandler() { $e = func_get_args(); echo '<pre style="color:red;&qu ...

  2. 冒泡排序 JAVA版

    冒泡排序 算法思想是每次从数组末端开始比较相邻俩元素,把第i小的冒泡到数组的第i个位置.i从0一直到N-1从而完成排序.当然也可以从数组开始端开始比较相邻两元素,把第i大的冒泡到第N-i个位置.I从0 ...

  3. VSTO 学习笔记(十二)自定义公式与Ribbon

    原文:VSTO 学习笔记(十二)自定义公式与Ribbon 这几天工作中在开发一个Excel插件,包含自定义公式,根据条件从数据库中查询结果.这次我们来做一个简单的测试,达到类似的目的. 即在Excel ...

  4. 祖国版SoloWheel:Airwheel爱尔威火星车 拆箱&上手经验_运动户外_晒物广场_什么值得买

    http://m.baidu.com/from=844b/bd_page_type=1/ssid=0/uid=3151E6C0905477A13653132D762BB6FB/pu=sz%401320 ...

  5. Android学习-各种对话框

    在android的编程中,对话框的用处是非常多的,然而,有时对对话框的需求也是不一样的,那么现在,就总结对话框的种类,以及事件的处理形势. 1.简单的对话框 public void showDialo ...

  6. H3C TE BGP拓扑排错报告

                                                                                       BGP排错报告 故障一:PPP链路 ...

  7. Jersey框架二:Jersey对JSON的支持

    Jersey系列文章: Jersey框架一:Jersey RESTful WebService框架简介 Jersey框架二:Jersey对JSON的支持 Jersey框架三:Jersey对HTTPS的 ...

  8. 登录oracle时,scott is locked (帐户被锁定) 的解决方法

    登录Oracle时,用scott/tiger  通常此时会报一个错误: scott is locked (帐户被锁定) 现在就要用超级用户system将scott帐户进行解锁. cmd->sql ...

  9. Hello World 之 控制台版本(Console Application)

    原文:Hello World 之 控制台版本(Console Application) 先来介绍下Hello, World   "Hello, World"程序指的是只在计算机屏幕 ...

  10. Objective-C之成魔之路【9-类构造方法和成员变量作用域、以及变量】

    郝萌主倾心贡献,尊重作者的劳动成果.请勿转载. 假设文章对您有所帮助,欢迎给作者捐赠,支持郝萌主,捐赠数额任意,重在心意^_^ 我要捐赠: 点击捐赠 Cocos2d-X源代码下载:点我传送 构造方法 ...