2016-06-17 1 views
-3

J'essaie d'obtenirun moyen d'obtenir des numéros JavaScript sans nombre d'Euler

Math.pow(2,1000);

Le résultat est "1.2676506002282294e + 30"

J'ai besoin le numéro sans numéro d'Euler "e + 30"

+6

Ce ne sont pas les chiffres d'Euler ... c'est 2,718 lol –

+4

Vérifiez également ceci: http://stackoverflow.com/questions/1685680/how-to-avoid-numerique-scientifique-pour-les-numeraux-en- javascript –

+0

Cela s'appelle _exponential notation_. Jetez un oeil à [cette autre question] (http://stackoverflow.com/questions/1685680/how-to-avoid-scientific-notation-for-large-numbers-in-javascript), il aborde le même problème =) – slezica

Répondre

1

C'est scientific notation, pas le numéro d'Euler.

Si vous voulez afficher le numéro sans e+NN partie:

  • converti en une chaîne
  • parse la e+NN partie
  • changement la virgule le nombre approprié de chiffres
  • retour la sortie sous la forme d'une chaîne

Sachez que cela entraînera des valeurs inexactes pour certains calculs en raison du fonctionnement de l'arithmétique en virgule flottante.

1

Avec de très grands nombres, JavaScript les affiche en notation scientifique. C'est parce que c'est très cher et illisible de les lister.

Pour exemple, cela signifie essentiellement

1.2676506002282294 * 10^30 

Vous prenez le numéro, puis multiplier par 10 à la puissance 30.

calculatrices utilisent souvent "E" ou "e" comme ceci: 1.8004E + 94

6E + 5 est le même que 6 x 10^5

Pour l'obtenir sans cette notation, utilisez simplement des nombres plus petits comme exposant.

Exemple: Math.pow(2,10)

Mathisfun fournit un excellent article sur la notation scientifique. Check it out ici

https://www.mathsisfun.com/numbers/scientific-notation.html

nombre d'Euler est une constante qui est la base d'un nombre naturel. C'est un nombre irrationnel, ce qui signifie que ses chiffres durent éternellement. Les deux premiers chiffres sont 2.7182818284