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的多彩百分比 动态进度条 投票效果显示效果实现代码
Aug 28 Javascript
PHP+MySQL+jQuery随意拖动层并即时保存拖动位置实例讲解
Oct 09 Javascript
JS获取鼠标坐标位置实例分析
Jan 20 Javascript
详解Node.js模块间共享数据库连接的方法
May 24 Javascript
第一次接触神奇的Bootstrap
Oct 14 Javascript
详解React-Native全球化多语言切换工具库react-native-i18n
Nov 03 Javascript
React Native 截屏组件的示例代码
Dec 06 Javascript
vue.js2.0点击获取自己的属性和jquery方法
Feb 23 jQuery
vue中子组件调用兄弟组件方法
Jul 06 Javascript
jquery实现的放大镜效果示例
Feb 24 jQuery
vue pages 多入口项目 + chainWebpack 全局引用缩写说明
Sep 21 Javascript
JavaScript实现五子棋小游戏
Oct 26 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
哪吒敖丙传:新人物二哥敖乙出场 小敖丙奶气十足
2020/03/08 国漫
用PHP即时捕捉PHP中的错误并发送email通知的实现代码
2013/01/19 PHP
PHP模拟登陆163邮箱发邮件及获取通讯录列表的方法
2015/03/07 PHP
laravel实现按时间日期进行分组统计方法示例
2019/03/23 PHP
thinkPHP5.1框架中Request类四种调用方式示例
2019/08/03 PHP
判断对象是否Window的实现代码
2012/01/10 Javascript
jQuery函数的第二个参数获取指定上下文中的DOM元素
2014/05/19 Javascript
JavaScript实现九九乘法表的简单实例
2016/06/07 Javascript
JavaScript导航脚本判断当前导航
2016/07/12 Javascript
Angular4如何自定义首屏的加载动画详解
2017/07/26 Javascript
JavaScript实现身份证验证代码实例
2019/08/26 Javascript
python创建线程示例
2014/05/06 Python
python+pandas+时间、日期以及时间序列处理方法
2018/07/10 Python
Python 限制线程的最大数量的方法(Semaphore)
2019/02/22 Python
python实现画循环圆
2019/11/23 Python
pytorch中的自定义数据处理详解
2020/01/06 Python
python获取依赖包和安装依赖包教程
2020/02/13 Python
TensorFlow Autodiff自动微分详解
2020/07/06 Python
Python实现LR1文法的完整实例代码
2020/10/25 Python
python爬虫筛选工作实例讲解
2020/11/23 Python
CSS3教程(3):border-color网页边框色彩
2009/04/02 HTML / CSS
西班牙香水和化妆品网上商店:Douglas
2017/10/29 全球购物
澳大利亚最受欢迎的美发和美容在线商店:Catwalk
2018/12/12 全球购物
英国领先的豪华时尚家居网上商店:Amara
2019/08/12 全球购物
西安众合通用.net笔试题
2013/03/18 面试题
通信专业个人自我鉴定
2013/10/21 职场文书
岗位职责的定义
2013/11/10 职场文书
名企HR怎样看待求职信
2014/02/23 职场文书
检察院对照“四风”认真查找问题落实整改措施
2014/09/26 职场文书
2014年政风行风工作总结
2014/11/22 职场文书
高三语文复习计划
2015/01/19 职场文书
大学生逃课检讨书
2015/05/04 职场文书
小学五年级(说明文3篇)
2019/08/13 职场文书
MySQL中InnoDB存储引擎的锁的基本使用教程
2021/05/26 MySQL
dubbo集成zipkin获取Traceid的实现
2021/07/26 Java/Android
Web应用开发TypeScript使用详解
2022/05/25 Javascript