• JavaScript的Math对象


    原文

      简书原文:https://www.jianshu.com/p/8776ec9cfb58

    大纲

      前言
      1、Math对象的值属性
      2、Math对象的函数属性
      3、Math对象的函数的使用

    前言

      Math对象是一个全局的对象,不需要定义一个新的对象可直接使用。
      Math 对象用于执行数学任务。
      Math 对象并不像 Date 和 String 那样是对象的类,因此没有构造函数 Math()。

    var resultNum1 = Math.abs(testNum);
    

    1、Math对象的值属性

    Math.E : 2.718281828459045
    Math.LN10 : 2.302585092994046
    Math.LN2 : 0.6931471805599453
    Math.LOG2E: 0.6931471805599453
    Math.LOG10E: 2.302585092994046
    Math.PI: 3.141592653589793
    Math.SQRT2 : 1.4142135623730951
    Math.SQRT1_2: 0.7071067811865476(1/2的平方根)
    

    2、Math对象的函数属性

    abs(x);  //绝对值
    exp(x);  //(e的x次方)
    log(x);  //(x的自然对数)
    max(x1,x2,x3...);  //最大值
    min(x1,x2,x3...);  //最小值
    pow(x,y);  //(x的y次方)
    random();  //(随机数)
    sqrt(x);  //(x的平方根)
    
    //取整
    ceil(x);
    floor(x);
    round(x);
    
    //三角函数
    cos(x);
    sin(x);
    tan(x);
    acos(x);
    asin(x);
    atan(x);
    atan2(y,2);
    

    3、Math对象的函数的使用

    3.1、取整方法:parseInt()、ceil()、floor()、round()

    <!--
            parseInt():将浮点数转换成整数,直接取整数部分(是JavaScript的内置对象,
    不是Math的方法)
            ceil():向上取整
            floor():向下取整
            round():四舍五入取整    
    -->
    <html>
        <head>
            <title>Test</title>
        </head>
        <body>
            <script>
                var myNumber = prompt("Enter the number to be rounded","");
                document.write("<h3>The number you entered was "+myNumber+"</h3><br/>");
                document.write("<p>The rounding results for this number are </p>");
                document.write("<table width=150 border=1>");
                document.write("<tr><th>Method</th><th>Result</th></tr>");
                document.write("<tr><td>parseInt()</td><td>"+parseInt(myNumber)+"</td></tr>");
                document.write("<tr><td>ceil()</td><td>"+Math.ceil(myNumber)+"</td></tr>");
                document.write("<tr><td>floor()</td><td>"+Math.floor(myNumber)+"</td></tr>");
                document.write("<tr><td>round()</td><td>"+Math.round(myNumber)+"</td></tr>");
                document.write("</table>");
            </script>
        </body>
    </html>
    

    3.2、获取随机数的方法:random()方法

    <!--
      随机投掷十次的骰子,获取骰子点数
    -->
    <html>
    <head><title>Test</title></head>
    <body>
    <script>
    var throwCount ;
    var diceThrow;
    for(throwCount = 0;throwCount<10;throwCount++){
        diceThrow = (Math.floor(Math.random() * 6) +1);
        document.write(diceThrow +"<br/>");
    }
    //4 5 4 6 2 1 3 6 4 6
    

    3.3、数的平方方法:pow()方法

    <!--
      使用pow()方法模拟fix()方法
    -->
    <html>
    <head><title>Test</title></head>
    <body>
    <script>
    function fix(fixNumber, decimalPlaces){
        var div = Math.pow(10,decimalPlaces);
        fixNumber = Math.round(fixNumber * div)/div;
        return fixNumber;
    }
    
    var number1 = prompt("Enter the number with decimal places you want to fix","");
    var number2 = prompt("How many decimal places do you want?","");
    
    document.write(number1 + " fixed to " + number2 + " decimal places is:");
    document.write(fix(number1,number2));//234.234234 fixed to 2 decimal places is:234.23
    </script>
    </body>
    </html>
    

    3.4、最大最小方法:min()、max()

    /*
      但是由于min()和max()方法只能接受任意多个数值参数,而不能将变量传入,所以一般
    使用apply来重写这个方法
    */
    var values = [1,5,87,6,45,67];
    var max = Math.max(values);
    console.log(max);//NaN
    var max = Math.max.apply(Math,values);
    console.log(max);//87
    

      

  • 相关阅读:
    数组方法延伸
    Vue基础知识之过滤器(四)
    Vue基础知识之vue-resource和axios(三)
    【正则】对RegExp执行typeof运算的结果
    【正则】所有的字符(总)
    学习正则有感by魔芋(命名问题)
    关于正则表达式(转)
    【15】ES6 for Humans: The Latest Standard of JavaScript: ES2015 and Beyond
    中国首届CSS开发者大会讲师照片
    拥有强大的自我驱动力是一种怎样的体验?
  • 原文地址:https://www.cnblogs.com/shcrk/p/9278085.html
Copyright © 2020-2023  润新知