JS中移除非数字最多保留一位小数


Posted in Javascript onMay 09, 2018

js中移除非数字最多保留一位小数的实现代码如下所示:

//去除非数字
  var clearNoNum = function (item) {
    if (item!=null && item!=undefined) {
      //先把非数字的都替换掉,除了数字和.
      item = item.replace(/[^\d.]/g, "");
      //必须保证第一个为数字而不是.
      item = item.replace(/^\./g, "");
      //保证只有出现一个.而没有多个.
      item = item.replace(/\.{2,}/g, "");
      //保证.只出现一次,而不能出现两次以上
      item = item.replace(".", "$#$").replace(/\./g, "").replace("$#$", ".");
      //最多保留小数点后一位
      var arr = item.split(".");
      if (arr.length > 1) item = arr[0] + '.' + (arr[1].length > 1 ? arr[1].substr(0, 1) : arr[1]);
     }
    return item;
  }

补充:

下面看下js处理数字保留2位小数,强制保留2位小数不够补上.00

1、保留两位小数    //功能:将浮点数四舍五入,取小数点后2位

2、//制保留2位小数,如:2,会在2后面补上00.即2.00 

<!DOCTYPE html> 
<html> 
<head> 
<meta charset="UTF-8"> 
<title>Test</title> 
<script type="text/javascript" src="js/jq.js"></script> 
</head> 
<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.write("四舍五入 <br/>") 
  document.write("3.14159267保留2位小数:" + toDecimal(3.14159267)+"<br/>");  
  document.write("3.14159267强制保留2位小数:" + toDecimal2(3.14159267)+"<br/>");  
  document.write("3.14159267保留2位小数:" + toDecimal(3.14559267)+"<br/>");  
  document.write("3.14159267强制保留2位小数:" + toDecimal2(3.15159267)+"<br/>");  
  document.write("3.14159267保留2位小数:" + fomatFloat(3.14559267, 2)+"<br/>");  
  document.write("3.14159267保留1位小数:" + fomatFloat(3.15159267, 1)+"<br/>");  
  document.write("五舍六入 <br/>") 
  document.write("1000.003保留2位小数:" + 1000.003.toFixed(2)+"<br/>");  
  document.write("1000.08保留1位小数:" + 1000.08.toFixed(1)+"<br/>");  
  document.write("1000.04保留1位小数:" + 1000.04.toFixed(1)+"<br/>");  
  document.write("1000.05保留1位小数:" + 1000.05.toFixed(1)+"<br/>");  
  document.write("科学计数 <br/>") 
  document.write(3.1415+"科学技术后:"+3.1415.toExponential(2)+"<br/>");  
  document.write(3.1455+"科学技术后:"+3.1455.toExponential(2)+"<br/>");  
  document.write(3.1445+"科学技术后:"+3.1445.toExponential(2)+"<br/>");  
  document.write(3.1465+"科学技术后:"+3.1465.toExponential(2)+"<br/>");  
  document.write(3.1665+"科学技术后:"+3.1665.toExponential(1)+"<br/>");  
  document.write("精确到n位,不含n位 <br/>") 
  document.write("3.1415精确到小数点第2位" + 3.1415.toPrecision(2)+"<br/>");  
  document.write("3.1455精确到小数点第3位" + 3.1465.toPrecision(3)+"<br/>");  
  document.write("3.1445精确到小数点第2位" + 3.1415.toPrecision(2)+"<br/>");  
  document.write("3.1465精确到小数点第2位" + 3.1455.toPrecision(2)+"<br/>");  
  document.write("3.166592679287精确到小数点第5位" + 3.141592679287.toPrecision(5)+"<br/>");  
</script>  
<body> 
<input type="text" id="Score" /> 
</body> 
</html>

总结

以上所述是小编给大家介绍的JS中移除非数字最多保留一位小数,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
jQuery 入门级学习笔记及源码
Jan 22 Javascript
Jquery和JS用外部变量获取Ajax返回的参数值的方法实例(超简单)
Jun 17 Javascript
javascript与jquery中跳出循环的区别总结
Nov 04 Javascript
javascript实现控制div颜色
Jul 07 Javascript
javascript实现随机显示星星特效
Jan 28 Javascript
JavaScript中的普通函数和箭头函数的区别和用法详解
Mar 21 Javascript
微信小程序三级联动地址选择器的实例代码
Jul 12 Javascript
基于DOM节点删除之empty和remove的区别(详解)
Sep 11 Javascript
微信小程序实战篇之购物车的实现代码示例
Nov 30 Javascript
浅谈微信小程序flex布局基础
Sep 10 Javascript
react-router 路由切换动画的实现示例
Dec 03 Javascript
浅谈bootstrap layer.open中end的使用方法
Sep 12 Javascript
JS关于刷新页面的相关总结
May 09 #Javascript
Vue引入jquery实现平滑滚动到指定位置
May 09 #jQuery
webstorm中vue语法的支持详解
May 09 #Javascript
JavaScript DOM元素常见操作详解【添加、删除、修改等】
May 09 #Javascript
Vue中使用vee-validate表单验证的方法
May 09 #Javascript
VeeValidate在vue项目里表单校验应用案例
May 09 #Javascript
vue实现2048小游戏功能思路详解
May 09 #Javascript
You might like
Syphon 秘笈
2021/03/03 冲泡冲煮
PHP去除数组中重复的元素并按键名排序函数
2008/08/18 PHP
PHP实现的随机IP函数【国内IP段】
2016/07/20 PHP
PHP 接入微信扫码支付总结(总结篇)
2016/11/03 PHP
PHP工厂模式、单例模式与注册树模式实例详解
2019/06/03 PHP
tp5框架基于Ajax实现列表无刷新排序功能示例
2020/02/10 PHP
juqery 学习之三 选择器 子元素与表单
2010/11/25 Javascript
在父页面调用子页面的JS方法
2013/09/29 Javascript
javascript实现点击单选按钮链接转向对应网址的方法
2015/08/12 Javascript
localStorage实现便签小程序
2016/11/28 Javascript
vue单页面打包文件大?首次加载慢?nginx带你飞,从7.5M到1.3M蜕变过程(推荐)
2018/01/16 Javascript
jQuery实现的鼠标响应缓冲动画效果示例
2018/02/13 jQuery
JavaScript中使用Spread运算符的八种方法总结
2020/06/18 Javascript
vue3.0 加载json的方法(非ajax)
2020/10/26 Javascript
微信小程序调用后台service教程详解
2020/11/06 Javascript
使用Python获取CPU、内存和硬盘等windowns系统信息的2个例子
2014/04/15 Python
对python程序内存泄漏调试的记录
2018/06/11 Python
在dataframe两列日期相减并且得到具体的月数实例
2018/07/03 Python
Python给图像添加噪声具体操作
2019/03/03 Python
Django之PopUp的具体实现方法
2019/08/31 Python
python ubplot使用方法解析
2020/01/10 Python
python3实现raspberry pi(树莓派)4驱小车控制程序
2020/02/12 Python
pycharm开发一个简单界面和通用mvc模板(操作方法图解)
2020/05/27 Python
python连接mysql有哪些方法
2020/06/24 Python
基于logstash实现日志文件同步elasticsearch
2020/08/06 Python
ANINE BING官方网站:奢华的衣橱基本款和时尚永恒的单品
2019/11/26 全球购物
本科毕业生自荐信
2014/06/02 职场文书
迎国庆演讲稿
2014/09/15 职场文书
领导班子整改方案和个人整改措施
2014/10/25 职场文书
法学专业求职信范文
2015/03/19 职场文书
超市督导岗位职责
2015/04/10 职场文书
起诉状范本
2015/05/20 职场文书
校运会班级霸气口号
2015/12/24 职场文书
优质护理心得体会
2016/01/22 职场文书
教您怎么制定西餐厅运营方案 ?
2019/07/05 职场文书
python解决12306登录验证码的实现
2021/04/18 Python