当我有1个变量输入Math.pow()时,我不知道如何使用inputVal。这就是我的方法。

else if(pow == true){
    if(equation.indexOf('^') == inputVal){
        inputVal = inputVal.replace('^', '');
        input.innerHTML = Math.pow(inputVal);
    }else{
        input.innerHTML = 'Syntax Error';
        pow = false;
    }
}


我尝试独自执行此操作,但此操作无效。

我也试过了

else if(pow == true){
    input.innerHTML = Math.pow(inputVal);
}else{
    pow = false;
}

最佳答案

Math.pow()需要2个参数。
如果您的inputVal是a ^ b格式
您需要做的是

var piv = inputVal.indexOf("^");
var a = parseInt(inputVal.substring(0, piv));
var b = parseInt(inputVal.substring(piv+1));
input.innerHTML = Math.pow(a, b);


请确保您的inputVal是字符串。否则字符串功能将无法正常工作。
柯南的评论是正确的。您可以根据需要尝试parseFloat甚至Number()函数。

10-06 03:21