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 相关文章推荐
javascritp实现input输入框相关限制用法
Jun 29 Javascript
JavaScript修改css样式style
Apr 15 Javascript
Jquery 设置标题的自动翻转
Oct 03 Javascript
JavaScript执行顺序详细介绍
Dec 04 Javascript
从零学jquery之如何使用回调函数
May 16 Javascript
javascript制作游戏开发碰撞检测的封装代码
Mar 31 Javascript
解决JavaScript数字精度丢失问题的方法
Dec 03 Javascript
ionic grid(栅格)九宫格制作详解
Jun 30 Javascript
Angular路由ui-router配置详解
Aug 01 Javascript
解决vue中修改export default中脚本报一大堆错的问题
Aug 27 Javascript
Vue $mount实战之实现消息弹窗组件
Apr 22 Javascript
JavaScript实现世界各地时间显示
Sep 07 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
php中截取字符串支持utf-8
2007/01/18 PHP
PHP面向对象三大特点学习(充分理解抽象、封装、继承、多态)
2012/05/07 PHP
解析PHP缓存函数的使用说明
2013/05/10 PHP
PHP解析url并得到url参数方法总结
2018/10/11 PHP
基于thinkphp6.0的success、error实现方法
2019/11/05 PHP
php实现根据身份证获取精准年龄
2020/02/26 PHP
tp5框架前台无限极导航菜单类实现方法分析
2020/03/29 PHP
Javascript Select操作大集合
2009/05/26 Javascript
Jquery 学习笔记(一)
2009/10/13 Javascript
JQuery 弹出框定位实现方法
2010/12/02 Javascript
javascript设置金额样式转换保留两位小数示例代码
2013/12/04 Javascript
让html页面不缓存js的实现方法
2014/10/31 Javascript
jQuery页面弹出框实现文件上传
2017/02/09 Javascript
详解使用grunt完成requirejs的合并压缩和js文件的版本控制
2017/03/02 Javascript
Bootstrap Multiselect 常用组件实现代码
2017/07/09 Javascript
webpack构建vue项目的详细教程(配置篇)
2017/07/17 Javascript
JavaScript对象拷贝与Object.assign用法实例分析
2018/06/20 Javascript
详解Vue中数组和对象更改后视图不刷新的问题
2018/09/21 Javascript
vue h5移动端禁止缩放代码
2019/10/28 Javascript
python生成指定长度的随机数密码
2014/01/23 Python
对python 数据处理中的LabelEncoder 和 OneHotEncoder详解
2018/07/11 Python
Python爬取qq空间说说的实例代码
2018/08/17 Python
CentOS6.9 Python环境配置(python2.7、pip、virtualenv)
2019/05/06 Python
Python3 chardet模块查看编码格式的例子
2019/08/14 Python
Pytorch释放显存占用方式
2020/01/13 Python
Python基于requests实现模拟上传文件
2020/04/21 Python
python算的上脚本语言吗
2020/06/22 Python
tensorflow下的图片标准化函数per_image_standardization用法
2020/06/30 Python
html5教程实现Photoshop渐变色效果
2013/12/04 HTML / CSS
欧洲领先的电子和电信零售商和服务提供商:Currys PC World Business
2017/12/05 全球购物
Sneaker Studio法国:购买运动鞋
2018/06/08 全球购物
厨师岗位职责
2013/11/12 职场文书
社团文化节邀请函
2014/01/10 职场文书
学习优秀共产党员先进事迹思想报告
2014/09/17 职场文书
oracle表分区的概念及操作
2021/04/24 Oracle
Java面试题冲刺第十七天--基础篇3
2021/08/07 面试题