js prototype 格式化数字 By shawl.qiu


Posted in Javascript onApril 02, 2007

说明:
最近打算把 Js 练精点, 只好暂时放弃原来掌握的还行的 VBScript, 全面使用 Jscript/Javascript. 
发现 VBs 和 Js 都有些双方没有的功能...
比如 Js 就没有 VBs 的 formatNumber, formatN*** 类的函数. 
但是 Js 几乎随处可用 正则, 这是我的长处, 这点特吸引我, 不像 VBs 只有 RegExp 使用域可以使用正则.

引用一本书里的一句话:
The way to really learn a new programming language is to write programs with it.
--JavaScript: The Definitive Guide, 4th Edition

目录:
1. 内容: Number.prototype.formatNumber() 源代码.
2. 效率测试

shawl.qiu 
2006-10-14
http://blog.csdn.net/btbtd

1. 内容: Number.prototype.formatNumber() 源代码.

linenum 

<%   
    var $num=9876577784321.011   
        Number.prototype.formatNumber=function(pointPsti){   
        /*--------------------------------------------------------*\     
         *    Javascript 格式化数字原型, By shawl.qiu   
         *    客户端使用: var $num=9876577784321.011; document.write('<br/>'+$num.formatNumber(3)+'<br/>');   
         *    服务端使用: var $num=9876577784321.011; Response.Write($num.formatNumber(3));    
        \*--------------------------------------------------------*/   
            if(this=='')return false;   
            if(typeof(pointPsti)=='undefined'){   
                var pointPsti=3;   
            } else { if(isNaN(pointPsti)){pointPsti=3}; }   
            var num=this+'', numDc='', temp='';   
            if(num.indexOf('.')>-1){ ptPs=num.indexOf('.'); numDc=num.substr(ptPs); num=num.substr(0,ptPs); }   
            for(var i=num.length-1; i>=0;temp+=num.substr(i,1), i--);   
            var re=new RegExp('(.{'+pointPsti+'})','g');   
                temp=temp.replace(re,'$1,'); num='';                   
            for(var i=temp.length-1; i>=0; num+=temp.substr(i,1), i--);   
                num=num.replace(/^\,|\,$/,'')+numDc;   
            return num; // shawl.qiu script   
        }   
            Response.Write($num.formatNumber(3)+'<br/>');   
%> 

2. 效率测试

输出 10,000 次, 耗时 2797 毫秒. 
输出 5,000 次, 耗时 1515 毫秒. 
输出 2,000 次, 耗时 672 毫秒. 
输出 1,000 次, 耗时 281 毫秒. 
输出 500 次, 耗时 140 毫秒. 
输出 100 次, 耗时 16 毫秒. 

Javascript 相关文章推荐
jquery 图片上传按比例预览插件集合
May 28 Javascript
js加强的经典分页实例
Mar 15 Javascript
jquery的flexigrid无法显示数据提示获取到数据
Jul 19 Javascript
可自己添加html的伪弹出框实现代码
Sep 08 Javascript
Angular.js如何从PHP读取后台数据
Mar 24 Javascript
jQuery模拟12306城市选择框功能简单实现方法示例
Aug 13 jQuery
Vue组件Draggable实现拖拽功能
Dec 01 Javascript
jQuery实现的点击图片居中放大缩小功能示例
Jan 16 jQuery
详解vue开发中调用微信jssdk的问题
Apr 16 Javascript
vue 动态组件用法示例小结
Mar 06 Javascript
Vue js with语句原理及用法解析
Sep 03 Javascript
javascript函数式编程基础
Sep 15 Javascript
JXTree对象,读取外部xml文件数据,生成树的函数
Apr 02 #Javascript
新浪中用来显示flash的函数
Apr 02 #Javascript
我也种棵OO树JXTree[js+css+xml]
Apr 02 #Javascript
javascript中获取选中对象的类型
Apr 02 #Javascript
javascript实现动态增加删除表格行(兼容IE/FF)
Apr 02 #Javascript
在IE中调用javascript打开Excel的代码(downmoon原作)
Apr 02 #Javascript
在你的网页中嵌入外部网页的方法
Apr 02 #Javascript
You might like
Youku 视频绝对地址获取的方法详解
2013/06/26 PHP
php常用图片处理类
2016/03/16 PHP
JavaScript 学习笔记(十三)Dom创建表格
2010/01/21 Javascript
javascript中&quot;/&quot;运算符常见错误
2010/10/13 Javascript
Node.js中使用Buffer编码、解码二进制数据详解
2014/08/16 Javascript
jQuery $命名冲突解决方案汇总
2014/11/13 Javascript
js与jquery回车提交的方法
2015/02/03 Javascript
Listloading.js移动端上拉下拉刷新组件
2016/08/04 Javascript
简单的vue-resourse获取json并应用到模板示例
2017/02/10 Javascript
Node.js使用orm2进行update操作时关联字段无法修改的解决方法
2017/06/13 Javascript
vue使用pdfjs显示PDF可复制的实现方法
2018/12/14 Javascript
JS学习笔记之原型链和利用原型实现继承详解
2019/05/29 Javascript
vue登录注册实例详解
2019/09/14 Javascript
《javascript设计模式》学习笔记三:Javascript面向对象程序设计单例模式原理与实现方法分析
2020/04/07 Javascript
Vue实现点击导航栏当前标签后变色功能
2020/08/19 Javascript
vue实现放大镜效果
2020/09/17 Javascript
[01:03:27]Optic vs VGJ.S 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
python使用calendar输出指定年份全年日历的方法
2015/04/04 Python
python executemany的使用及注意事项
2017/03/13 Python
用python制作游戏外挂
2018/01/04 Python
对pandas的层次索引与取值的新方法详解
2018/11/06 Python
windows7 32、64位下python爬虫框架scrapy环境的搭建方法
2018/11/29 Python
六行python代码的爱心曲线详解
2019/05/17 Python
浅谈Pandas Series 和 Numpy array中的相同点
2019/06/28 Python
Python内存管理实例分析
2019/07/10 Python
基于Python绘制美观动态圆环图、饼图
2020/06/03 Python
用pandas划分数据集实现训练集和测试集
2020/07/20 Python
css3实现背景模糊的三种方式(小结)
2020/05/15 HTML / CSS
留学生求职信
2014/06/03 职场文书
运动会广播稿200字
2014/10/18 职场文书
考试作弊万能检讨书
2014/10/19 职场文书
英文自荐信范文
2015/03/25 职场文书
2015年团队工作总结范文
2015/05/04 职场文书
心灵点滴观后感
2015/06/02 职场文书
Python代码,能玩30多款童年游戏!这些有几个是你玩过的
2021/04/27 Python
dubbo服务整合zipkin详解
2021/07/26 Java/Android