前端技术分享,欢迎关注!

前端技术分享论坛

 找回密码
 注册帐号

QQ登录

只需一步,快速开始

查看: 7211|回复: 0
打印 上一主题 下一主题

精确小数点到后几位,2种实现方法

[复制链接]

127

主题

146

帖子

1146

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1146
跳转到指定楼层
楼主
发表于 2013-10-17 17:57:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
实现效果:数值串中小数点有n多位,精确小数点到指定几位,超出部分直接舍去
2种方法,一种方法是单纯的数值操作,另一种是正则匹配去实现!

方法一:数值操作
  1. <script type="text/javascript">
  2.                 // 精确小数点到后几位
  3.                     var str="1.123456";
  4.                     function round2places(str,num){
  5. var temp=str*(Math.pow(10,num));
  6. temp=parseInt(temp);
  7. return temp/(Math.pow(10,num));
  8. <span style="line-height: 1.5;">}</span>
  9.                 alert(round2places(str,3));
  10.                 </script>
复制代码
方法二: 正则匹配
  1. <script type="text/javascript">
  2.                 // 精确小数点到后几位
  3.                     var str="1.123456";
  4.                     function round2places(str,num){
  5.                         var rules=new RegExp("(\\d)*\\.\\d{"+num+"}","g"); //正则字符串拼接,要用 <b>new RegExp()</b> ,另外要<b>转义</b>
  6.                         return str.match(rules);

  7.                     }
  8.                 alert(round2places(str,3));
  9.                 </script>
复制代码
就代码长短来看,正则匹配明显占优势!



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

QQ|小黑屋|手机版|Archiver|前端技术分享 ( 粤ICP备20056750号  

GMT+8, 2024-5-8 10:28 , Processed in 0.164180 second(s), 34 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表