首页 > 网站 > WEB开发 > 正文

JavaScript Math和Number对象

2024-04-27 14:13:52
字体:
来源:转载
供稿:网友

javaScript Math和Number对象

1.Math对象

1.1介绍

Math对象,是数学对象,提供对数据的数学计算,如:获取绝对值、向上取整等。无构造函数,无法被初始化,只提供静态属性和方法。

1.2构造函数

无:Math对象无构造函数,无法被初始化,只提供静态属性和方法。

1.3静态属性

1.3.1Math.E:常量e。返回自然对数的底数:2.718281828459045

1.3.2Math.PI:常量π。返回圆周率的值:3.141592653589793

1.4静态方法

1.4.1Math.sin(value):正弦函数

1.4.2Math.cos(value):余弦函数

1.4.3Math.tan(value):正切函数

1.4.4Math.asin(value):反正弦函数

1.4.5Math.acos(value):反余弦函数

1.4.6Math.atan(value):反正切函数

1.4.7Math.abs(value):返回绝对值

参数:

①value{Number|NumberStr}:数字或者纯数字的字符串。

返回值:

{Number}返回参数的绝对值数字。若参数不为数字,返回NaN。

示例:

h.abs('123');//=>123:纯数字字符串

Math.abs('-123');//=>123

Math.abs(123);//=>123

Math.abs(-123);//=>123

Math.abs('123a');//=>NaN:非纯数字字符串

1.4.8Math.ceil(value):对一个数向上取整,并不是四舍五入

参数:

①value{Number|NumberStr}:数字或者纯数字的字符串。

返回值:

{Number}返回取整后的值。若参数不为数字,返回NaN。

示例:

Math.ceil(2.7);//=>3

Math.ceil(2.3);//=>3:2.3向上取整返回3

Math.ceil(-2.7);//=>-2

Math.ceil(-2.3);//=>-2

Math.ceil('2.7');//=>3:纯数字字符串

Math.ceil('2.7a');//=>NaN:非纯数字字符串

1.4.9Math.floor(value):对一个数向下取整,并不是四舍五入

参数:

①value{Number|NumberStr}:数字或者纯数字的字符串。

返回值:

{Number}返回取整后的值。若参数不为数字,返回NaN。

示例:

Math.floor(2.7);//=>2

Math.floor(2.3);//=>2

Math.floor(-2.7);//=>-3:-2.7向下取整返回-3

Math.floor(-2.3);//=>-3

Math.floor('2.7');//=>2:纯数字字符串

Math.floor('2.7a');//=>NaN:非纯数字字符串

1.4.10Math.max(value1,value2...valueN):返回参数中最大的值

参数:

①value1,value2.....valueN{Number|NumberStr}:数字或者纯数字的字符串。

返回值:

{Number}返回最大值。若一个参数不为数字,返回NaN。

示例:

Math.max(1,2,3,4,5);//=>5

Math.max(1,2,3,4,'5');//=>5

Math.max(1,2,3,4,'a');//=>NaN

1.4.11Math.min(value1,value2...valueN):返回参数中最小的值

参数:

①value1,value2.....valueN{Number|NumberStr}:数字或者纯数字的字符串。

返回值:

{Number}返回最大值。若一个参数不为数字,返回NaN。

示例:

Math.min(1,2,3,4,5);//=>1

Math.min('1',2,3,4,5);//=>1

Math.min(1,2,3,4,'a');//=>NaN

1.4.12Math.pow(x,y):返回x的y次方

参数:

①x{Number|NumberStr}:数字或者纯数字的字符串。

②y{Number|NumberStr}:数字或者纯数字的字符串。

返回值:

{Number}返回x的y次方。若一个参数不为数字,返回NaN。

示例:

Math.pow(2,3);//=>8:2的3次方

Math.pow(3,2);//=>9:3的2次方

Math.pow('4',2);//=>16:4的2次方

Math.pow('2a',2);//=>NaN

1.4.13Math.random():返回一个伪随机数,大于0,小于1.0

参数:无

返回值:

{Number}返回一个伪随机数,大于0,小于1.0

示例:

Math.random();//=>0.8982374747283757

Math.random();//=>0.39617531932890415

Math.random();//=>0.35413061641156673

Math.random();//=>0.054441051790490746

1.4.14Math.round(value):四舍五入后取整

参数:

①value{Number|NumberStr}:数字或者纯数字的字符串。

返回值:

{Integer}返回参数四舍五入后的整数。若参数不为数字,返回NaN。

示例:

Math.round(2.5);//=>3

Math.round(2.4);//=>2

Math.round(-2.6);//=>-3

Math.round(-2.5);//=>-2:-2.5四舍五入为-2

Math.round(-2.4);//=>-2

Math.round('2.7');//=>3:纯数字字符串

Math.round('2.7a');//=>NaN:非纯数字字符串

1.4.15Math.sqrt(value):返回参数的平方根

参数:

①value{Number|NumberStr}:数字或者纯数字的字符串

返回值:

{Number}返回参数的平方根

示例:

console.log(Math.sqrt(9));//=>3

console.log(Math.sqrt(16));//=>4

console.log(Math.sqrt('25'));//=>5

console.log(Math.sqrt('a'));//=>NaN

2.Number对象

2.1介绍

Number对象,是数字对象,包含js中的整数、浮点数等等。

2.2定义

vara=1;

varb=1.1;

2.3静态属性

2.3.1Number.MAX_VALUE:表示JS中最大的数字,约为1.79e+308

2.3.2Number.MIN_VALUE:表示JS中最小的数字,约为5e-324

2.3.3Number.NaN:返回NaN,表示非数字值,与任意其他数字不等,也包括NaN本身。应使用Number.isNaN()来进行判断。

2.3.4Number.NEGATIVE_INFINITY:返回-Infinity,表示负无穷。

2.3.5Number.POSITIVE_INFINITY:返回Infinity,表示正无穷。进行计算的值大于Number.MAX_VALUE就返回Infinity。

2.4静态方法

2.4.1Number.isInteger(value):判断参数是否为整数

参数:

①value{Number}:数字

返回值:

{Boolean}返回参数是否为整数。纯整数的字符串也返回false。

示例:

Number.isInteger(1);//=>true

Number.isInteger(1.1);//=>false

Number.isInteger('1');//=>false:纯整数的字符串也返回false

Number.isInteger('1.1');//=>false

Number.isInteger('a');//=>false:非字符串返回false

2.4.2Number.isNaN(value):判断参数是否为NaN

参数:

①value{Object}:任意类型

返回值:

{Boolean}返回参数是否为NaN。

示例:

Number.isNaN(NaN);//=>true

Number.isNaN('NaN');//=>false:'NaN'字符串,并不为NaN

Number.isNaN(1);//=>false

Number.isNaN('1');//=>false

2.4.3Number.parseFloat(value):把参数转换为浮点数

参数:

①value{Number|NumberStr}:数字或者纯数字的字符串

返回值:

{Integer|Float}返回整数或浮点数数值

示例:

Number.parseFloat(1);//=>1:整数还是返回整数

Number.parseFloat(1.1);//=>1.1

Number.parseFloat('1aaa');//=>1:字符串前面为数字的,只返回数字

Number.parseFloat('1.1aaa');//=>1.1

Number.parseFloat('a1');//=>NaN:非数字开头,返回NaN

Number.parseFloat('a');//=>NaN

2.4.4Number.parseInt(value):把参数转换为整数

参数:

①value{Number|NumberStr}:数字或者纯数字的字符串

返回值:

{Integer}返回整数数值

示例:

Number.parseInt(1);//=>1

Number.parseInt(1.1);//=>1:浮点数返回整数

Number.parseInt('1aaa');//=>1:字符串前面为数字的,只返回数字

Number.parseInt('1.1aaa');//=>1

Number.parseInt('a1');//=>NaN:非数字开头,返回NaN

Number.parseInt('a');//=>NaN

2.5实例方法

2.5.1toExponential(value):将一个数字转为指数类型,参数表示小数点后的位数

参数:

①value{Number}:表示小数点后的位数

返回值:

{String}返回转换后的指数类型字符串

示例:

(123456789).toExponential(2);//=>1.23e+8:小数点2位

(123456789).toExponential(5);//=>1.23457e+8:小数点5位

(123456789).toExponential(10);//=>1.2345678900e+8:小数点10位,不足位数用0补位

2.5.2toFixed(value):将一个数字转换为指定小数位数的字符串。不传入参数,就是没小数位。返回值为四舍五入

参数:

①value{Number}:表示小数点后的位数

返回值:

{String}返回转换后的字符串;不够小数位以0填充;返回值为四舍五入后的值

示例:

console.log((1).toFixed(2));//=>1.00

console.log((1.2).toFixed(2));//=>1.20:不足位数,以0补位

console.log((1.277).toFixed(2));//=>1.28:进行了四舍五入

2.5.3toString():使用指定的进制,将一个数字转换为字符串。不传入参数,默认为十进制。

参数:

①value{Number}:表示进制数,取值范围:2到36

返回值:

{String}转换后进制的字符串

示例:

(10).toString();//=>10:默认为十进制

(10).toString(2);//=>1010:二进制

(10).toString(10);//=>10:十进制

(10).toString(16);//=>a:十六进制

2.6应用场景

2.6.1浮点数的加减乘除异常

说明:Js中的2个浮点数进行加减乘除运算,会返回异常的数值,如:0.2+0.7,返回0.899999999999。可以使用toFixed()方法,指定小数位。

示例:

console.log(0.2+0.7);//=>0.8999999999999999

console.log(0.7-0.5);//=>0.19999999999999996

console.log(3.03*10);//=>30.299999999999997

//使用toFixed()方法

console.log((0.2+0.7).toFixed(2));//=>0.90

console.log((0.7-0.5).toFixed(2));//=>0.20

console.log((3.03*10).toFixed(2));//=>30.30

2.6.2减法运算

说明:Js中进行减法运算时,会先把前后的值转换为数值再进行运算。若转换失败,返回NaN。

示例:

console.log('1'-0);//=>1:纯数字字符串减去0,可以快速转换为Nubmer对象

console.log(('1'-0).toFixed(2));//=>1.00:快速转换为Nubmer对象后调用实例方法

console.log('1'-'a');//=>NaN:一方无法转换为Nubmer对象


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表