Jak zrobić wykładniki w JavaScript?
Jak byś zrobił 12 ^ 2?
Odpowiedzi:
Istnieje operator potęgowania , który jest częścią końcowej specyfikacji ES7. Podobnie ma działać z Pythonem i Matlabem:
a**b // will rise a to the power b
Teraz jest już zaimplementowany w Edge14, Chrome52 , a także jest dostępny z traceur lub babel.
js> Math.pow(12, 2)
144
Math
metody, zobaczyłem exp
, a kiedy to nie zadziałało, po prostu się poddałem. xD Powinienem był pójść trochę dalej. No cóż. Dzięki.
Math.pow(x, y)
działa dobrze dla x ^ y, a nawet oblicza wyrażenie, gdy y nie jest liczbą całkowitą. Fragment kodu, na którym nie można polegać, Math.pow
ale który może oceniać tylko wykładniki całkowite, to:
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)
}
}
Jak wykonać wykładniki w JavaScript
Zgodnie MDN operator potęgowania zwraca wynik podnosząc pierwszy argument do mocy drugiego argumentu. To znaczy zmienna1 zmienna2 w poprzedniej instrukcji, gdzie zmienna1 i zmienna2 to zmienne. Operator potęgowania jest prawostronnie łączny: a ** b ** c jest równe a ** (b ** c).
Na przykład: // tutaj 2 pomnoży się 3 razy przez 2, a wynik wyniesie 8. // tutaj 4 pomnoży 4 razy przez 4, a wynik będzie 256.
2**3
4**4