javascript 小数点关于保留小数点后位数的问题

js保留小数点后N位的方法介绍-js教程-网页制作-壹聚教程网js保留小数点后N位的方法介绍
在js中我要保存小数点的函数有很多种像素toFixed函数,四舍五入 Math.round()他们都可以给我们保留小数点数了
利用toFixed函数
&script language=&&&
document.write(&&h1&JS保留两位小数例子&/h1&&br&&);&
&& var a=2.1321;&
&& document.write(&原来的值:&+a+&&br&&);&
&& document.write(&两位小数点:&+a.toFixed(2)+&&br&四位小数点&+a.toFixed(4));&
四舍五入的转换函数,如下:
function round(v,e){
for(;e&0;t*=10,e--);
for(;e&0;t/=10,e++);
return Math.round(v*t)/t;
参数里的:
v表示要转换的值
e表示要保留的位数
函数里的两个for,这个是重点了,
第一个for针对小数点右边的情况,也就是保留小数点右边多少位;
第二个for针对小数点左边的情况,也就是保留小数点左边多少位。
for的作用,就是计算t的值,也就是v应该放大或者缩小多少倍的倍数(倍数=t)。
for这里利用到了for里的两个特性,条件判断和计数器累计(循环),
当e满足条件时for继续,并且e每次累加(e的每次累加,就是给for制造不满足循环的条件)的同时,也计算t的值。
最后利用了原生的round方法来计算被放大/缩小后的v的结果,然后把结果放大/缩小到正确的倍数
下面各种保留二位数实例
&script type=&text/javascript&&&
&&&&&&& //保留两位小数&&
&&&&&&& //功能:将浮点数四舍五入,取小数点后2位&
&&&&&&& function toDecimal(x) {&
&&&&&&&&&&& var f = parseFloat(x);&
&&&&&&&&&&& if (isNaN(f)) {&
&&&&&&&&&&&&&&&&
&&&&&&&&&&& }&
&&&&&&&&&&& f = Math.round(x*100)/100;&
&&&&&&&&&&&&
&&&&&&& }&
&&&&&&& //制保留2位小数,如:2,会在2后面补上00.即2.00&
&&&&&&& function toDecimal2(x) {&
&&&&&&&&&&& var f = parseFloat(x);&
&&&&&&&&&&& if (isNaN(f)) {&
&&&&&&&&&&&&&&&&
&&&&&&&&&&& }&
&&&&&&&&&&& var f = Math.round(x*100)/100;&
&&&&&&&&&&& var s = f.toString();&
&&&&&&&&&&& var rs = s.indexOf('.');&
&&&&&&&&&&& if (rs & 0) {&
&&&&&&&&&&&&&&& rs = s.&
&&&&&&&&&&&&&&& s += '.';&
&&&&&&&&&&& }&
&&&&&&&&&&& while (s.length &= rs + 2) {&
&&&&&&&&&&&&&&& s += '0';&
&&&&&&&&&&& }&
&&&&&&&&&&&&
&&&&&&& }&
&&&&&&& function fomatFloat(src,pos){&&&&
&&&&&&&&&&&& return Math.round(src*Math.pow(10, pos))/Math.pow(10, pos);&&&&
&&&&&&& }&
&&&&&&& //四舍五入&
&&&&&&& alert(&保留2位小数:& + toDecimal(3.));&
&&&&&&& alert(&强制保留2位小数:& + toDecimal2(3.));&
&&&&&&& alert(&保留2位小数:& + toDecimal(3.));&
&&&&&&& alert(&强制保留2位小数:& + toDecimal2(3.));&
&&&&&&& alert(&保留2位小数:& + fomatFloat(3.));&
&&&&&&& alert(&保留1位小数:& + fomatFloat(3.));&
&&&&&&& //五舍六入&
&&&&&&& alert(&保留2位小数:& + .toFixed(2));&
&&&&&&& alert(&保留1位小数:& + 1000.08.toFixed(1));&
&&&&&&& alert(&保留1位小数:& + 1000.04.toFixed(1));&
&&&&&&& alert(&保留1位小数:& + 1000.05.toFixed(1));&
&&&&&&& //科学计数&
&&&&&&& alert(3.1415.toExponential(2));&
&&&&&&& alert(3.1455.toExponential(2));&
&&&&&&& alert(3.1445.toExponential(2));&
&&&&&&& alert(3.1465.toExponential(2));&
&&&&&&& alert(3.1665.toExponential(1));&
&&&&&&& //精确到n位,不含n位&
&&&&&&& alert(&精确到小数点第2位& + 3.1415.toPrecision(2));&
&&&&&&& alert(&精确到小数点第3位& + 3.1465.toPrecision(3));&
&&&&&&& alert(&精确到小数点第2位& + 3.1415.toPrecision(2));&
&&&&&&& alert(&精确到小数点第2位& + 3.1455.toPrecision(2));&
&&&&&&& alert(&精确到小数点第5位& + 3..toPrecision(5));&
&&& &/script&
上一页: &&&&&下一页:相关内容09-1409-1309-1609-17
03-0911-1804-1304-17
◇本站云标签君,已阅读到文档的结尾了呢~~
实现js保留小数点后n位的代码,..
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
实现js保留小数点后n位的代码
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer--144.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口(window.slotbydup=window.slotbydup || []).push({
id: '2081942',
container: s,
size: '1000,60',
display: 'inlay-fix'

我要回帖

更多关于 javascript 小数点 的文章

 

随机推荐