Iva*_*lez 28 javascript math operators
我在代码战中解决了一个kata,当我遇到双星号来表示它的强大功能时,我正在查看其他一些解决方案.我做了一些研究,可以看到这是python中的一个有效的运算符,但在JavaScript文档中却看不到它.
var findNb = m =>
{
var n = Math.floor((4*m)**.25);
var sum = x => (x*(x+1)/2)**2;
return sum(n) == m ? n : -1;
}
Run Code Online (Sandbox Code Playgroud)
然而,当我在代码大战上运行此解决方案时,它似乎有效.我想知道这是否是ES6中的新功能,虽然我没有发现它.
Mag*_*gus 18
**在ECMAScript 2016(ES7)中引入.但请记住,并非所有javascripts环境都实现它(例如,Internet Explorer不支持它).
如果您想要跨浏览器,则必须使用Math.pow.
Math.pow(4, 5)
Run Code Online (Sandbox Code Playgroud)
**运算符是 ES7 中的有效运算符。它的含义与Math.pow(x,y)
例如2**3相同,与Math.pow(2,3)
以下是维基百科的详细信息。
ES7 中添加了两个新特性:
求幂运算符 (**) 和 Array.prototype.includes
https://en.wikipedia.org/wiki/ECMAScript#cite_ref-ES2016_12-1