Javascript JS简单数学任务(将输入的数字提高到幂)

Javascript JS简单数学任务(将输入的数字提高到幂),javascript,math,Javascript,Math,我有一个js任务。我的程序应该从一个用户那里获取一个数字,并将其输入电源,然后再插入。我已经处理过正幂,但是负幂的算法总是给出一个肯定的答案,在选择零幂后,每个变量都会返回-1;请帮我找出一个错误 功能功率x(x,功率){ x=+提示符('插入数字:'); pow=+提示符('插入电源:'); var结果; 如果(x>0){ var结果=x; 对于(i=1;i

我有一个js任务。我的程序应该从一个用户那里获取一个数字,并将其输入电源,然后再插入。我已经处理过正幂,但是负幂的算法总是给出一个肯定的答案,在选择零幂后,每个变量都会返回-1;请帮我找出一个错误

功能功率x(x,功率){
x=+提示符('插入数字:');
pow=+提示符('插入电源:');
var结果;
如果(x>0){
var结果=x;
对于(i=1;ilog(powX())
对第二个条件使用
else if
,否则,其
else
块将始终对x>0执行,将结果设置为1

功能功率x(x,功率){
x=+提示符('插入数字:');
pow=+提示符('插入电源:');
var结果;
如果(x>0){
结果=x;
对于(i=1;ilog(powX())代码中几乎没有错误:

  • 您应该在第二个块中使用
    else if
    而不是
    if
  • 您应该检查
    pow
    而不是
    x
  • 您没有将
    var
    let
    i
    一起使用,因此它将成为全局变量。使用
    let
    var
  • 如果
块中使用了
var
,但使用
var
声明的变量具有函数作用域,因此它不会抛出错误,则在
中再次使用
var
。但是使用
让它打破你的密码。不要一次又一次地重新声明
结果


功能功率x(x,功率){
x=+提示符('插入数字:');
pow=+提示符('插入电源:');
var结果;
如果(功率>0){
结果=x;
for(设i=1;i对于(让i=0;我想检查负数或负幂?相当多的错误1)放错了
else
2)
x><0
,3)起始值应该是
1
,而不是
x
,4)循环应该以0开始虽然这可能是真的,但OP的代码被破坏的远不止“just”例如,它检查
x
是正还是负,但不检查
pow