欢迎来到代码驿站!

JavaScript代码

当前位置:首页 > 网页前端 > JavaScript代码

js prototype 格式化数字 By shawl.qiu

时间:2020-10-13 13:22:36|栏目:JavaScript代码|点击:
说明:
最近打算把 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代码

下一篇:JavaScript的History API使搜索引擎抓取AJAX内容

本文标题:js prototype 格式化数字 By shawl.qiu

本文地址:http://www.codeinn.net/misctech/10936.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有