zoukankan      html  css  js  c++  java
  • js中Number对象与MATH方法整理总结

    W3C的文档:

    Number 对象属性

    属性描述
    constructor 返回对创建此对象的 Number 函数的引用。
    MAX_VALUE 可表示的最大的数。
    MIN_VALUE 可表示的最小的数。
    NaN 非数字值。
    NEGATIVE_INFINITY 负无穷大,溢出时返回该值。
    POSITIVE_INFINITY 正无穷大,溢出时返回该值。
    prototype 使您有能力向对象添加属性和方法。

    Number 对象方法

    方法描述
    toString 把数字转换为字符串,使用指定的基数。
    toLocaleString 把数字转换为字符串,使用本地数字格式顺序。
    toFixed 把数字转换为字符串,结果的小数点后有指定位数的数字。
    toExponential 把对象的值转换为指数计数法。
    toPrecision 把数字格式化为指定的长度。
    valueOf 返回一个 Number 对象的基本数字值。

    Math 对象属性

    属性描述
    E 返回算术常量 e,即自然对数的底数(约等于2.718)。
    LN2 返回 2 的自然对数(约等于0.693)。
    LN10 返回 10 的自然对数(约等于2.302)。
    LOG2E 返回以 2 为底的 e 的对数(约等于 1.414)。
    LOG10E 返回以 10 为底的 e 的对数(约等于0.434)。
    PI 返回圆周率(约等于3.14159)。
    SQRT1_2 返回返回 2 的平方根的倒数(约等于 0.707)。
    SQRT2 返回 2 的平方根(约等于 1.414)。

    Math 对象方法

    方法描述
    abs(x) 返回数的绝对值。
    acos(x) 返回数的反余弦值。
    asin(x) 返回数的反正弦值。
    atan(x) 以介于 -PI/2 与 PI/2 弧度之间的数值来返回 x 的反正切值。
    atan2(y,x) 返回从 x 轴到点 (x,y) 的角度(介于 -PI/2 与 PI/2 弧度之间)。
    ceil(x) 对数进行上舍入。
    cos(x) 返回数的余弦。
    exp(x) 返回 e 的指数。
    floor(x) 对数进行下舍入。
    log(x) 返回数的自然对数(底为e)。
    max(x,y) 返回 x 和 y 中的最高值。
    min(x,y) 返回 x 和 y 中的最低值。
    pow(x,y) 返回 x 的 y 次幂。
    random() 返回 0 ~ 1 之间的随机数。
    round(x) 把数四舍五入为最接近的整数。
    sin(x) 返回数的正弦。
    sqrt(x) 返回数的平方根。
    tan(x) 返回角的正切。
    toSource() 返回该对象的源代码。
    valueOf() 返回 Math 对象的原始值。

     

    正文从这里开始-------------------------------------------------

      学习了这么久的js了,还没真正的去区分过number对象和math对象,今天就好好的整理一下

      

    Number 对象

      Number 对象是原始数值的包装对象。(官方解释)

      number对象就是一个数值型的对象,例如我们定义一个number对象:

    var num1 = 123;
    var num2 = Number(123);
    var num3 = new Number(123);

      通过这三种方式创建的对象是一样的吗?我们来测试一下:

    var num1 = 123;
    var num2 = Number(123);
    var num3 = new Number(123);
    
    num1 == num2    // true
    num1 == num3    //true
    num2 == num3    //true
    
    num1 === num2   //true
    num1 === num3   //false
    num2 === num3   //false

      我们在来看下这三种方式创建的对象类型

    typeof num1   //"number"
    typeof num2   //"number"
    typeof num3   //"object"

      到这里,你应该差不多明白了他们的区别了,我们在new一个number对象的时候,他就是一个对象,一个用来做构造函数的对象。我们来看一下官方是怎么解释的

      官方解释:当 Number() 和运算符 new 一起作为构造函数使用时,它返回一个新创建的 Number 对象。如果不用 new 运算符,把 Number() 作为一个函数来调用,它将把自己的参数转换成一个原始的数值,并且返回这个值(如果转换失败,则返回 NaN)。

    Number 对象描述

    在 JavaScript 中,数字是一种基本的数据类型。JavaScript 还支持 Number 对象,该对象是原始数值的包装对象。在必要时,JavaScript 会自动地在原始数据和对象之间转换。在 JavaScript 1.1 中,可以用构造函数 Number() 明确地创建一个 Number 对象,尽管这样做并没有什么必要。

    构造函数 Number() 可以不与运算符 new 一起使用,而直接作为转化函数来使用。以这种方式调用 Number() 时,它会把自己的参数转化成一个数字,然后返回转换后的原始数值(或 NaN)。

    构造函数通常还用作 5 个有用的数字常量的占位符,这 5 个有用的数字常量分别是可表示的最大数、可表示的最小数、正无穷大、负无穷大和特殊的 NaN 值。 注意,这些值是构造函数 Number() 自身的属性,而不是单独的某个 Number 对象的属性。

    Math 对象

    Math 对象用于执行数学任务。Math 对象并不像 Date 和 String 那样是对象的类,因此没有构造函数 Math(),像 Math.sin() 这样的函数只是函数,不是某个对象的方法。您无需创建它,通过把 Math 作为对象使用就可以调用其所有属性和方法。

    var pI = Math().PI;
    
    var floor = Math().floor(x);

     Number与Math的不同:

    1.   Number返回值是字符串类型
    2.   Math返回的是数值类型

     示例:

    lg:对一个数保留3位小数,并且是四舍五入保留

      定义和用法:number对象的toFixed() 方法可把 Number 四舍五入为指定小数位数的数字。

      语法:NumberObject.toFixed(num)

    var num = 1.323434124124;
    num.toFixed(3); // "1.323"

    lg:对一个数进行整数化

      方法1: .toFixed()
      方法2: Math.round(x)

    //方法1
    var num = 3.1415;
    //这里的参数0 可以省略,默认为0位
    num.toFixed(0)  //  '3'  --字符串
    // 方法2 
    Math.round(num); // 3  -- 数值
  • 相关阅读:
    ASP.NET 上传文件最大值调整
    Git撤销提交
    MVC模式下如何实现RegisterStartupScript等功能
    RESTful接口设计原则/最佳实践(学习笔记)
    如何编译MongoDB?
    【NTKO】一些常用操作
    【solr】使用-取反时注意,-是表示排除,不能单独做条件用
    【layui】日期范围分开两个input,开始日期选中时,结束日期的最小可选择就是开始日期
    【转】【Java】剪切板操作大全
    【转】彻底禁用Chrome的“请停用以开发者模式运行的扩展程序”提示
  • 原文地址:https://www.cnblogs.com/shuiche/p/5709815.html
Copyright © 2011-2022 走看看