📜  ES6数字

📅  最后修改于: 2021-01-01 04:13:00             🧑  作者: Mango

ES6编号

ES6 Number具有执行日期,浮点数,整数等数字功能的几种方法和属性。使用ES6中的Numbers,我们可以轻松地使用Number对象。这是因为浏览器会自动将数字字面量转换为数字类的实例。

使用Number()构造函数创建Number对象。 Number对象的一些主要用途包括NaN ,当参数不能转换为数字时,它将返回。

句法

var num = new Number(value);

参数

值:这是要创建的对象的数值。如果我们提供任何非数字参数来代替它,则它将返回NaN,因为相应的参数无法转换为数字。

数字属性

让我们看一下ES6中引入的Number对象的一些属性,列表如下:

S.no Properties Description
1. Number.EPSILON It defines the smallest intervals between two representable numbers.
2. Number.MAX_SAFE_INTEGER It defines maximum safe integer in JavaScript (253-1)
3. Number.MAX_VALUE It defines the largest possible representable number.
4. Number.MIN_SAFE_INTEGER It defines the minimum safe integer in JavaScript (-(253-1)).
5. Number.MIN_VALUE It defines the smallest positive number, which is closest to zero.
6. Number.Nan It defines ‘not a number’ value.
7. Number.NEGATIVE_INFINITY It defines a value, which is less than the defined number.
8. Number.POSITIVE_INFINITY It defines a value, which is greater than the defined number.
9. Number.prototype It defines a special value that represents infinity.

让我们尝试详细介绍ES6中引入的Number属性。

爱普生

此属性表示1与最小浮点数之间的差,该差大于1。我们不必创建Number对象来访问静态属性,因为我们可以简单地使用Number.EPSILON属性。

var value = Number.EPSILON;
console.log(value);

输出量

2.220446049250313e-16

编号:MAX_SAFE_INTEGER

此属性表示JavaScript ( 2 53 -1 )中的最大安全整数。

var value = Number.MAX_SAFE_INTEGER; 
console.log(value);

输出量

9007199254740991

编号:MAX_VALUE

此属性属于静态Number对象,并表示可能的最大正数的常量。

var val = Number.MAX_VALUE; 
console.log("Number.MAX_VALUE equals to: " + val );

输出量

Number.MAX_VALUE equals to: 1.7976931348623157e+308

编号:MIN_SAFE_INTEGER

它表示JavaScript(-( 2 53 -1 ))中的最小安全整数。

var val = Number.MIN_SAFE_INTEGER; 
console.log("Number. MIN_SAFE_INTEGER equals to: " + val );  

输出量

Number. MIN_SAFE_INTEGER equals to: -9007199254740991

编号:MIN_VALUE

它代表最小的正数值。

var val = Number.MIN_VALUE; 
console.log("Number.MIN_VALUE equals to : " + val );

输出量

Number.MIN_VALUE equals to : 5e-324

编号方法

Number对象仅包含默认方法,这些方法是每个对象定义的一部分。数字对象的方法列表如下:

S.no. Methods Description
1. Number.isNan() It returns whether the passed value is NaN or not.
2. Number.isFinite() It returns whether the passed value is a finite number.
3. Number.isInteger() It returns whether the passed value is an integer.
4. Number.isSafeInteger() It determines whether the passed value is a safe integer (range between -(253 – 1) and (253-1)).
5. Number.parseFloat() It is equivalent to the parseFloat() of the global object.
6. Numbr.pareInt() It is equivalent to the parseInt() of the global object.

让我们尝试详细说明ES6中引入的上述Number方法。

Number.isNan()

它确定值是否为Nan。如果该值不是数字,则返回true。

var res = Number.isNaN(NaN); 
console.log(res); 

var res1 = Number.isNaN('Nan'); 
console.log(res1); 

var res2 = Number.isNaN(123); 
console.log(res2);

输出量

true
false
false

Number.isFinite()

它确定一个值是否是一个有限数。如果该值是Number类型且等于有限数字,则返回true。否则,它返回false。

var res = Number.isFinite(Infinity); 
console.log(res); 

var res1 = Number.isFinite(123); 
console.log(res1); 

var res2 = Number.isFinite('Infinity'); 
console.log(res2);

输出量

false
true
false

Number.isInteger()

顾名思义,它确定传递的值是否为整数。如果该值为数字且必须为整数(不带小数的数字),则返回true。否则,它返回false。

var res = Number.isInteger(-100); 
console.log(res); 

var res1 = Number.isInteger(100); 
console.log(res1); 

var res2 = Number.isInteger(1.001); 
console.log(res2);

输出量

true
true
false

Number.isSafeInteger()

安全整数是在- (2 53-1 )(2 53 -1)范围内的整数。 Number.isSafeInteger()方法确定该值是否为安全整数。

var res = Number.isSafeInteger(-100); 
console.log(res); 

var res1 = Number.isSafeInteger(100.9); 
console.log(res1); 

var res2 = Number.isSafeInteger(-100); 
console.log(res2); 

var res3 = Number.isSafeInteger(Math.pow(2,53)); 
console.log(res3);

输出量

true
false
true
true

二进制,八进制和十六进制字面量

ES6增加了对二进制字面量的支持,并更改了表示字面量。让我们看看ES6中字面量的表示形式。

二进制字面量表示

ES6中的二进制字面量使用0b前缀表示,后跟二进制数字序列,分别是01

前缀可以小写也可以大写。但是,建议将小写字母用作前缀。

console.log(0b010) 
console.log(0b110) 
console.log(0b101) 
console.log(0B100)

输出量

2
6
5
4

八进制字面量表示

ES6中的八进制字面量使用0o前缀表示,后跟八进制数字的序列(从0到7)。我们不能在八进制字面量中包含超出范围(0到7)的数字或数字组合。

console.log(0o34) 
console.log(0o1007)
console.log(0o571234)

输出量

28
519
193180

十六进制字面量表示

ES6中的十六进制字面量使用0x前缀表示

console.log(0x678) 
console.log(0x100)
console.log(0x788)

输出量

1656
256
1928