Eksponen JavaScript

Jawaban:

46

Ada operator eksponen , yang merupakan bagian dari spesifikasi akhir ES7. Ini seharusnya bekerja dengan cara yang mirip dengan python dan matlab:

a**b // will rise a to the power b

Sekarang sudah diimplementasikan di Edge14, Chrome52 , dan juga tersedia dengan traceur atau babel.

Salvador Dali
sumber
130

Math.pow():

js> Math.pow(12, 2)
144
Ignacio Vazquez-Abrams
sumber
2
Ketika melihat-lihat Mathmetode, saya melihat exp, dan ketika itu tidak berhasil saya menyerah begitu saja. xD Seharusnya melangkah lebih jauh. Baiklah. Terima kasih.
McKayla
9
@tylermwashburn: exp (x) adalah angka e yang dipangkatkan x, yaitu e ^ x. e = 2,71828182846 ...
Andreas Rejbrand
Apakah ada yang tahu dari mana asal nama 'pow'?
Luca Steeb
4
@steebchen: Jika Anda bertanya tentang asal usul nama, itu kependekan dari "kekuatan", seperti dalam "dua pangkat tiga". Jika Anda bertanya bahasa mana yang memperkenalkannya sebagai suatu fungsi, Ini mungkin salah satu dari beberapa bahasa pertama yang ada.
Ignacio Vazquez-Abrams
9

Math.pow(x, y)berfungsi dengan baik untuk x ^ y dan bahkan mengevaluasi ekspresi saat y bukan bilangan bulat. Sepotong kode tidak bergantung Math.powtetapi yang hanya dapat mengevaluasi eksponen bilangan bulat adalah:

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)
  }
}
Anon Ymus
sumber
0

Bagaimana kita melakukan eksponen dalam JavaScript
Menurut MDN
The Operator eksponensial mengembalikan hasil dari penggalangan operan pertama yang kekuatan operan kedua. Yaitu, var1 var2, dalam pernyataan sebelumnya, di mana var1 dan var2 adalah variabel. Operator eksponen adalah asosiatif kanan: a ** b ** c sama dengan a ** (b ** c).
Contoh:
2**3// di sini 2 akan dikalikan 3 kali dengan 2 dan hasilnya akan menjadi 8.
4**4// di sini 4 akan dikalikan 4 kali dengan 4 dan hasilnya akan menjadi 256.

Mayank_VK
sumber