• Javascript四舍五入(Math.round()与Math.pow())


    代码

    Code highlighting produced by Actipro CodeHighlighter (freeware)
    http://www.CodeHighlighter.com/

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head>
        <title>Javascript四舍五入(Math.round()与Math.pow())</title>
        <script type="text/javascript">
            //Math.round(x);返回数字最接近的整数,四舍五入取整数,即舍去小数部分
            function f(){
                alert(Math.round(123.567));
                alert(Math.round(123.456));
            }
            //Math.pow(x,y);返回底数的指定次幂
            //返回以x的y次幂,等同于x的y次幂的数值表达式
            //如果pow的参数过大而引起浮点溢出,返回Infinity
            function f1(){
                alert(Math.pow(2,10));//2的10次方等于1024
                alert(Math.pow(1024,0.1));//1024的0.1次方等于2
                alert(Math.pow(99,9999));//溢出则返回Infinity
            }
            /*Javascript设置要保留的小数位数,四舍五入。
             *ForDight(Dight,How):数值格式化函数,Dight要格式化的 数字,How要保留的小数位数。
             *这里的方法是先乘以10的倍数,然后去掉小数,最后再除以10的倍数。
             */  
            function ForDight(Dight,How){  
                Dight = Math.round(Dight*Math.pow(10,How))/Math.pow(10,How);  
                return Dight;  
            }  
            function f2(){
                alert(ForDight(12345.67890,3));//保留三位小数
                alert(ForDight(123.99999,4));//保留四位小数
            }
            //另外一种四舍五入的方法,原理一样。
            //里面的两个参数:num就是要转换的数据。n为要转换的位数
            //cheng(123.456,2);//保留两位小数
            function cheng(num,n){
                var  dd=1;  
                var  tempnum;  
                for(i=0;i<n;i++){
                    dd*=10;  
                }  
                tempnum = num*dd;
                tempnum = Math.round(tempnum);  
                alert(tempnum/dd);  
            }
        </script>
    </head>
    <body>
        <input type="button" value="round" onclick="f();" />
        <input type="button" value="pow" onclick="f1();" />
        <input type="button" value="设置要保留的小数位数,四舍五入" onclick="f2();" />
        <input type="button" value="cheng" onclick="cheng(123.456,2);" />
    </body>
    </html>

      

    代码

     

    Code highlighting produced by Actipro CodeHighlighter (freeware)
    http://www.CodeHighlighter.com/

    <script type="text/javascript">
    //用Javascript取float型小数点后两位,例22.127456取成22.13,如何做? 
    //1.最笨的办法....... [我就怎么干的.........] 
        function get(){
            var s = 22.127456 + "";
            var str = s.substring(0,s.indexOf(".") + 3);
            alert(str);
        } 
    </script>
    <script type="text/javascript">
    //2. 正则表达式效果不错 
        onload = function(){
            var a = "23.456322";
            var aNew;
            var re = /([0-9]+.[0-9]{2})[0-9]*/;
            aNew = a.replace(re,"$1");
            alert(aNew);
        }
    </script>
    
    <script type="text/javascript">
    //3. 他就比较聪明了..... 
        var num=22.127456;
        alert( Math.round(num*100)/100);
    </script>
    
    <script type="text/javascript">
    //4.会用新鲜东西的朋友....... 但是需要 IE5.5+才支持。 
        var num=22.127456;
        alert( num.toFixed(2));
    </script>

    文章来自:http://my.oschina.net/haquanwen/blog/144033?p=1

  • 相关阅读:
    构建之法 阅读笔记01
    个人作业1 -数组
    进度一
    开课博客
    生活尝试
    人月神话3
    安卓开发工具
    人月神话 2
    Qt 的入门小程序
    提问的智慧 摘抄(How To Ask Questions The Smart Way)
  • 原文地址:https://www.cnblogs.com/webqiand/p/4330403.html
Copyright © 2020-2023  润新知