网站首页/网页设计列表/内容

一个格式化数值的函数

网页设计2020-12-25阅读
网站建设是指使用标识语言(markup language),通过一系列设计、建模、和执行的过程将电子格式的信息通过互联网传输,最终以图形用户界面(GUI)的形式被用户所浏览。简单来说,网页设计的目的就是产生网站。简单的信息如文字,图片(GIF,JPEG,PNG)和表格,都可以通过使超文件标示语言、可扩展超文本标记语言等标示语言放置到网站页面上。
简单模拟了一点XSL里的formatNumber()方法

一些说明:
“,” (半角的豆号) 如果有的话,看豆号到小数点(如果有的话)前有几位,则按几位划分整数部分
“0”(数字零) 如果该位上没有数字,就补0
“#”(井号) 如果该位上有数字就输出数字,没有则不输出

格式化数值的函数
<script>function formatNumber(number,pattern){var str= number.toString();var strInt;var strFloat;var formatInt;var formatFloat;if(/\./g.test(pattern)){formatInt= pattern.split('.')[0];formatFloat= pattern.split('.')[1];}else{formatInt= pattern;formatFloat= null;}if(/\./g.test(str)){if(formatFloat!=null){var tempFloat= Math.round(parseFloat('0.'+str.split('.')[1])*Math.pow(10,formatFloat.length))/Math.pow(10,formatFloat.length);strInt= (Math.floor(number)+Math.floor(tempFloat)).toString();strFloat= /\./g.test(tempFloat.toString())?tempFloat.toString().split('.')[1]:'0';}else{strInt= Math.round(number).toString();strFloat= '0';}}else{strInt= str;strFloat= '0';}if(formatInt!=null){var outputInt= '';var zero= formatInt.match(/0*$/)[0].length;var comma= null;if(/,/g.test(formatInt)){comma= formatInt.match(/,[^,]*/)[0].length-1;}var newReg= new RegExp('(\\d{'+comma+'})','g');if(strInt.length<zero){outputInt= new Array(zero+1).join('0')+strInt;outputInt= outputInt.substr(outputInt.length-zero,zero)}else{outputInt= strInt;}var outputInt= outputInt.substr(0,outputInt.length%comma)+outputInt.substring(outputInt.length%comma).replace(newReg,(comma!=null?',':'')+'$1')outputInt= outputInt.replace(/^,/,'');strInt= outputInt;}if(formatFloat!=null){var outputFloat= '';var zero= formatFloat.match(/^0*/)[0].length;if(strFloat.length<zero){outputFloat= strFloat+new Array(zero+1).join('0');//outputFloat= outputFloat.substring(0,formatFloat.length);var outputFloat1= outputFloat.substring(0,zero);var outputFloat2= outputFloat.substring(zero,formatFloat.length);outputFloat= outputFloat1+outputFloat2.replace(/0*$/,'');}else{outputFloat= strFloat.substring(0,formatFloat.length);}strFloat= outputFloat;}else{if(pattern!=''
(pattern=='' && strFloat=='0')){strFloat= '';}}return strInt+(strFloat==''?'':'.'+strFloat);}alert(formatNumber(0,''));alert(formatNumber(12432.21,'#,###'));alert(formatNumber(12432.21,'#,###.000#'));alert(formatNumber(12432,'#,###.00'));alert(formatNumber(12432.419,'#,###.0#'));</script>
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行](出处:蓝色理想)大多数人在上网的时候,都会浏览网页提供给我们的信息。

……

相关阅读