比较codewars中javascript的能力实践

比较codewars中javascript的能力实践,javascript,Javascript,我当时正在进行代码战的实践 以下是说明: 您必须构建一个函数来比较幂,如果第一个成员较大,则返回-1,如果它们相等,则返回0,否则返回1比较的权力将以[base,exponent]格式提供: 比较能力([2,10],[2,15])==1 比较能力([2,10],[3,10])==1 比较能力([2,10],[2,10])==0 比较能力([3,9],[5,6])=-1 比较能力([7,7],[5,8])=-1 这是我的代码,但它说这是错误的解决方案。我不知道为什么它是无效的 功能比较电源(n1

我当时正在进行代码战的实践

以下是说明: 您必须构建一个函数来比较幂,如果第一个成员较大,则返回-1,如果它们相等,则返回
0,否则返回
1
比较的权力将以[base,exponent]格式提供:

比较能力([2,10],[2,15])==1
比较能力([2,10],[3,10])==1
比较能力([2,10],[2,10])==0
比较能力([3,9],[5,6])=-1
比较能力([7,7],[5,8])=-1

这是我的代码,但它说这是错误的解决方案。我不知道为什么它是无效的

功能比较电源(n1、n2){
//你的代码在这里
var one=Math.log(n1[0])*n1[1];
var two=Math.log(n2[0])*n2[1];
如果(一个>两个)返回-1;
否则,如果(一<二)返回1;
如果(1==2),则返回0;
}
比较能力([2,10],[2,15])//1;
比较能力([2,10],[3,10])//1;
比较能力([2,10],[2,10])//0;
比较能力([3,9],[5,6])/-1);

比较功率([7,7],[5,8])/-1)它是否在所有测试场景中给出正确的结果?如果是的话,它是有效的。事实上,在一个(措辞相当糟糕的)网站上,一些随机的人认为你应该加入一堆三元运算符,这完全是不相关的。链接到所讨论的练习将是有用的。成功的答案当然是一个更好的答案(因为它在匹配基数或匹配指数的情况下是捷径),但我怀疑这是他们正在测试的东西。除非,在他们自己的测试环境中,他们会做一些类似于包装
Math.log
函数的事情,以便检查您是否调用了它。但那会是相当秘密的。我注意到的唯一区别是,你的函数应该正确地处理1的幂和数字到0的幂,但另一个不会。可能发生的是,它们有一些“隐藏”的测试用例,其中你的函数给出了不同的结果。正如@StephenTG所指出的,一种情况是零次方的情况。然而,在这种情况下,你的结果实际上是正确的。谢谢所有的评论!以防万一你们还想自己去查卡塔!它是否在所有测试场景中给出正确的结果?如果是的话,它是有效的。事实上,在一个(措辞相当糟糕的)网站上,一些随机的人认为你应该加入一堆三元运算符,这完全是不相关的。链接到所讨论的练习将是有用的。成功的答案当然是一个更好的答案(因为它在匹配基数或匹配指数的情况下是捷径),但我怀疑这是他们正在测试的东西。除非,在他们自己的测试环境中,他们会做一些类似于包装
Math.log
函数的事情,以便检查您是否调用了它。但那会是相当秘密的。我注意到的唯一区别是,你的函数应该正确地处理1的幂和数字到0的幂,但另一个不会。可能发生的是,它们有一些“隐藏”的测试用例,其中你的函数给出了不同的结果。正如@StephenTG所指出的,一种情况是零次方的情况。然而,在这种情况下,你的结果实际上是正确的。谢谢所有的评论!以防万一你们还想自己去查卡塔!