JS保留小数点(四舍五入、四舍六入)实现思路及实例


Posted in Javascript onApril 25, 2013
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<html> 
<head> 
<title>floatDecimal.html</title> 
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> 
<meta http-equiv="description" content="this is my page"> 
<meta http-equiv="content-type" content="text/html; charset=gb2312"> 
<script type="text/javascript"> 
//保留两位小数 
//功能:将浮点数四舍五入,取小数点后2位 
function toDecimal(x) { 
var f = parseFloat(x); 
if (isNaN(f)) { 
return; 
} 
f = Math.round(x*100)/100; 
return f; 
} 
//制保留2位小数,如:2,会在2后面补上00.即2.00 
function toDecimal2(x) { 
var f = parseFloat(x); 
if (isNaN(f)) { 
return false; 
} 
var f = Math.round(x*100)/100; 
var s = f.toString(); 
var rs = s.indexOf('.'); 
if (rs < 0) { 
rs = s.length; 
s += '.'; 
} 
while (s.length <= rs + 2) { 
s += '0'; 
} 
return s; 
} 
function fomatFloat(src,pos){ 
return Math.round(src*Math.pow(10, pos))/Math.pow(10, pos); 
} 
//四舍五入 
document.writeln("保留2位小数:" + toDecimal(3.14159267) + '<br/>'); 
document.writeln("强制保留2位小数:" + toDecimal2(3.14159267) + '<br/>'); 
document.writeln("保留2位小数:" + toDecimal(3.14559267) + '<br/>'); 
document.writeln("强制保留2位小数:" + toDecimal2(3.15159267) + '<br/>'); 
document.writeln("保留2位小数:" + fomatFloat(3.14559267, 2) + '<br/>'); 
document.writeln("保留1位小数:" + fomatFloat(3.15159267, 1) + '<br/>'); 
//五舍六入 
document.writeln("保留2位小数:" + 1000.003.toFixed(2) + '<br/>'); 
document.writeln("保留1位小数:" + 1000.08.toFixed(1) + '<br/>'); 
document.writeln("保留1位小数:" + 1000.04.toFixed(1) + '<br/>'); 
document.writeln("保留1位小数:" + 1000.05.toFixed(1) + '<br/>'); 
//科学计数 
document.writeln(3.1415.toExponential(2) + '<br/>'); 
document.writeln(3.1455.toExponential(2) + '<br/>'); 
document.writeln(3.1445.toExponential(2) + '<br/>'); 
document.writeln(3.1465.toExponential(2) + '<br/>'); 
document.writeln(3.1665.toExponential(1) + '<br/>'); 
//精确到n位,不含n位 
document.writeln("精确到小数点第2位" + 3.1415.toPrecision(2) + '<br/>'); 
document.writeln("精确到小数点第3位" + 3.1465.toPrecision(3) + '<br/>'); 
document.writeln("精确到小数点第2位" + 3.1415.toPrecision(2) + '<br/>'); 
document.writeln("精确到小数点第2位" + 3.1455.toPrecision(2) + '<br/>'); 
document.writeln("精确到小数点第5位" + 3.141592679287.toPrecision(5) + '<br/>'); 
</script> 
</head> 
<body> 
This is my HTML page. <br> 
</body> 
</html>

javascript四舍五入保留两位小数

function count(){
   //alert("count");
   var size=~~(document.getElementById("size").value);
   var value=0;
   for(var i=0;i<size;i++){
    var val=1*(document.getElementById("afterAdjScor"+i).value);
    if(null!=val){
     value =Math.round((1*(value+val))*100)/100;
    }
   }
   if(isNaN(value)){
    value="输入必须为数字类型";
   }
   document.getElementById("total").value=value;
  }

说明:~~XX:字符串转int
      1*XX:字符串转float
      Math.round((1*(value+val))*100)/100:四舍五入

Javascript 相关文章推荐
javascript prototype,executing,context,closure
Dec 24 Javascript
JQuery入门——移除绑定事件unbind方法概述及应用
Feb 05 Javascript
DOM节点的替换或修改函数replaceChild()用法实例
Jan 12 Javascript
JavaScript 学习笔记之变量及其作用域
Jan 14 Javascript
浅谈Node.js中的定时器
Jun 18 Javascript
canvas绘制一个常用的emoji表情
Mar 30 Javascript
JS实现图片预加载之无序预加载功能代码
May 12 Javascript
在vue-cli脚手架中配置一个vue-router前端路由
Jul 03 Javascript
vue-resource调用promise取数据方式详解
Jul 21 Javascript
代码分析vue中如何配置less
Sep 28 Javascript
jquery实现上传文件进度条
Mar 26 jQuery
nuxt 服务器渲染动态设置 title和seo关键字的操作
Nov 05 Javascript
JQuery为textarea添加maxlength属性并且兼容IE
Apr 25 #Javascript
同时使用n个window onload加载实例介绍
Apr 25 #Javascript
上传的js验证(图片/文件的扩展名)
Apr 25 #Javascript
7款吸引人眼球的jQuery/CSS3特效实例分享
Apr 25 #Javascript
JQUERY对单选框(radio)操作的小例子
Apr 25 #Javascript
jQuery中 noConflict() 方法使用
Apr 25 #Javascript
只需20行代码就可以写出CSS覆盖率测试脚本
Apr 24 #Javascript
You might like
最简单的PHP程序--记数器
2006/10/09 PHP
由php的call_user_func传reference引发的思考
2010/07/23 PHP
PHP两种去掉数组重复值的方法比较
2014/06/19 PHP
PHP也能干大事之PHP中的编码解码详解
2015/04/20 PHP
JSON用法之将PHP数组转JS数组,JS如何接收PHP数组
2015/10/08 PHP
php性能分析之php-fpm慢执行日志slow log用法浅析
2016/10/17 PHP
定义select的边框颜色
2008/04/28 Javascript
jquery select动态加载选择(兼容各种浏览器)
2013/02/01 Javascript
javascript使用window.open提示“已经计划系统关机”的原因
2014/08/15 Javascript
Boostrap栅格系统与自己额外定义的媒体查询的冲突问题
2017/02/19 Javascript
JS正则表达式验证密码格式的集中情况总结
2017/02/23 Javascript
基于vue.js轮播组件vue-awesome-swiper实现轮播图
2017/03/17 Javascript
微信小程序 中wx.chooseAddress(OBJECT)实例详解
2017/03/31 Javascript
vue-cli3脚手架的配置及使用教程
2018/08/28 Javascript
jQuery实现基本隐藏与显示效果的方法详解
2018/09/05 jQuery
Vue实现移动端拖拽交换位置
2020/07/29 Javascript
python中的yield使用方法
2014/02/11 Python
python打开url并按指定块读取网页内容的方法
2015/04/29 Python
浅析Python中的join()方法的使用
2015/05/19 Python
Django中使用group_by的方法
2015/05/26 Python
Python单链表简单实现代码
2016/04/27 Python
python中正则的使用指南
2016/12/04 Python
Python编程之Re模块下的函数介绍
2017/10/28 Python
FFT快速傅里叶变换的python实现过程解析
2019/10/21 Python
Python列表元素常见操作简单示例
2019/10/25 Python
Django框架之中间件MiddleWare的实现
2019/12/30 Python
pycharm设置python文件模板信息过程图解
2020/03/10 Python
Python中格式化字符串的四种实现
2020/05/26 Python
中科方德软件测试面试题
2016/04/21 面试题
读书心得体会
2013/12/28 职场文书
好习惯伴我成长演讲稿
2014/05/21 职场文书
无毒社区工作方案
2014/05/23 职场文书
五好关工委申报材料
2014/05/31 职场文书
2014优秀大学生简历自我评价
2014/09/15 职场文书
法制教育观后感
2015/06/17 职场文书
Redis基本数据类型Zset有序集合常用操作
2022/06/01 Redis