Tag: ecmascript 7

Array.prototype.includes与Array.prototype.indexOf

除了改进的可读性之外,还有没有优于indexOf ? 他们看起来和我一样。 这有什么区别 var x = [1,2,3].indexOf(1) > -1; //true 和这个? var y = [1,2,3].includes(1); //true

克隆除一个键以外的js对象

我有一个平坦的JS对象: {a: 1, b: 2, c: 3, …, z:26} 我想克隆除了一个元素的对象: {a: 1, c: 3, …, z:26} 最简单的方法是什么(如果可能的话,宁愿使用es6 / 7)?

为什么在JavaScript中Math.pow()(有时)不等于**?

我刚刚发现了ECMAScript 7特性a**b作为Math.pow(a,b) ( MDN参考 )的一个替代方法,并且在Math.pow(a,b) 文章中发现了一个他们明显performance不同的讨论。 我已经在Chrome 55中进行了testing,可以确认结果不同。 Math.pow(99,99)返回3.697296376497263e+197 而 99**99返回3.697296376497268e+197 因此,logging区别Math.pow(99,99) – 99**99结果-5.311379928167671e+182 。 到目前为止,可以这么说,这只是另一个实现,但是将其封装到一个函数中又会有所不同: function diff(x) { return Math.pow(x,x) – x**x; } 调用diff(99)返回0 。 为什么会这样呢? 正如xszaboj指出的,这可以缩小到这个问题: var x = 99; x**x – 99**99; // Returns -5.311379928167671e+182