Math.pow(x, y)
отлично работает для x ^ y и даже вычисляет выражение, когда y не является целым числом.Кусок кода, не основанный на Math.pow
, но который может оценивать только целочисленные показатели:
function exp(base, exponent) {
exponent = Math.round(exponent);
if (exponent == 0) {
return 1;
}
if (exponent < 0) {
return 1 / exp(base, -exponent);
}
if (exponent > 0) {
return base * exp(base, exponent - 1)
}
}