ES6的一些笔记(三)

数值Number类型

进制前缀的改变


在ES6规范中8进制与2进制统一用0b0B来标识二进制,0o0O来展示八进制

新的类方法


isFinite():

isFinite()检测一个数值是否有限,意思就是是否是非穷大。

Number.isFinite(99) // true
Number.isFinite(0.3) // true
Number.isFinite(‘99’) // false
Number.isFinite(true) // false
Number.isFinite(NaN) // false
isNaN():

isNaN()检测一个数值是否是NaN。

Number.isNaN(99) // false
Number.isNaN(0.3) // false
Number.isNaN(‘99’) // false
Number.isNaN(true) // false
Number.isNaN(NaN) //  true
parseInt():

parseInt()和ES5的全局方法一样可以将字符串转化为整数。

var str = "12.333";
console.log(Number.parseInt(str));  // 12
parseFloat():

parseFloat()和ES5的全局方法一样可以将字符串转化为小数。

var str = "12.333";
console.log(Number.parseFloat(str));  // 12.333
isInteger()

isInteger()判断是否是一个整数,.0也算整数。

console.log(Number.isInteger(12.0)); // true
Number.EPSILON:

Number.EPSILON极小的常量一般来用来计算误差,因为在小数计算中往往会出现错误。

5.2/3.7 < Number.EPSILON
Number.MAX_SAFE_INTEGER:

Number.MAX_SAFE_INTEGERJS能够最大表示的数字值

Number.MIN_SAFE_INTEGER

Number.MIN_SAFE_INTEGERJS能够最小表示的数字值

Number.isSafeInteger():

isSafeInteger()判断是否是一个在JS范围中的数字即不大于MAX_SAFE_INTEGER不小于MIN_SAFE_INTEGER

Math类型

Math类方法扩展

trunc(number):

trunc(number)先转化为数字在转化为整数。

console.log(Math.trunc(4.33));       // 4
console.log(Math.trunc("14.33"));  // 14
sign(number):

sign(number)根据传入的数字 得出 +0 -0 +1 -1 NaN 返回值,判断数值。

console.log(Math.sign(-0));  // -0
cbrt(number):

cbrt(number)传入数字计算出这个数字的立方根

console.log(Math.cbrt(27));
clz32(number)

clz32(number)返回一个数的32位无符号整数形式有多少个前导0。

console.log(Math.clz32(0)); 
imul(number)

imul(number,number)返回两个数以32位带符号整数形式相乘的结果,返回的也是一个32位的带符号整数。

console.log(Math.clz32(0));
fround(number)

fround(number)返回一个数的单精度浮点数形式。

console.log(Math.fround(2.2));   // 2.200000047683716
hypot(number)

hypot(number,...) 返回所有参数的平方和的平方根。

console.log(Math.hypot(9,9));  // 12.727922061357857
expm1(number)

expm1(number) 返回Math.exp(x) - 1

console.log(Math.expm1(9)); // 8102.083927575384
log1p(number)

log1p(number) 返回Math.log(1 + number),number 不能为-1。

console.log(Math.log1p(9));  // 2.302585092994046
log2(number)

log2(number)2为底数

console.log(Math.log2(9));  
log10(number)

log10(number)10为底数

console.log(Math.log10(9));  
sinh(number)

sinh(number)求number的双曲正弦。

console.log(Math.sinh(3));  // 10.017874927409903
cosh(number)

cosh(number) 求number的双曲余弦。

console.log(Math.cosh(4));   // 27.308232836016487
tanh(number)

tanh(number)求number的双曲余弦。

console.log(Math.tanh(4)); // 0.999329299739067
asinh(number)

asinh(number)求number的反双曲正弦。

console.log(Math.asinh(4));   // 2.0947125472611012
acosh(number)

acosh(number)求number的反双曲余弦。

console.log(Math.acosh(4));  // 2.0634370688955608
atanh(number)

atanh(number)求number的反双曲正切。

console.log(Math.acosh(0)); // 0

运算符

in运算符

key in obj 判断左边的属性或者方法,是否为右边的对象所有返回一个布尔值

delete操作符

delete car.name 删除car实例的name属性.

扩展运算符...

...将一个数组扩展为,分割的数据

ES7 新增指数运算符
var a = 4;
a**= 5  // 实际就安值为 a的5次方

你可能感兴趣的:(ES6的一些笔记(三))