1. Math.sign方法用来判断一个数到底是正数、负数、还是零。对于非数值,会先将其转换为数值。
Math.sign(-4) // -1
Math.sign(4) // 1
Math.sign(0) // 0
Math.sign(-0) // -0
Math.sign(NaN) // NaN
Math.sign = Math.sign || function(x) { // 在es5可以用这个方法代替
x=+x; //convert to a number
if (x===0 || isNaN(x)) {
return x;
}
return x > 0 ? 1 : -1 ;
}
2. ES2016 新增了一个指数运算符(**)。
2 ** 2=4;
2 ** 3=8;
注意 : 这个运算符的一个特点是右结合,而不是常见的左结合。多个指数运算符连用时,是从最右边开始计算的。
2 ** 2 ** 3 =256 // 2 **(2 ** 3)
let a=1.5;
a**=2; 等价于 a= a * a;
let b=4;
b ** = 3; 等价于 b=b*b*b;