Heim >Web-Frontend >js-Tutorial >Wie vermeide ich die wissenschaftliche Schreibweise beim Drucken großer Zahlen in JavaScript?

Wie vermeide ich die wissenschaftliche Schreibweise beim Drucken großer Zahlen in JavaScript?

Linda Hamilton
Linda HamiltonOriginal
2024-12-10 11:57:11743Durchsuche

How to Avoid Scientific Notation When Printing Large Numbers in JavaScript?

Wie drucke ich große Zahlen ohne wissenschaftliche Notation in JavaScript?

JavaScript wandelt ganze Zahlen mit mehr als 21 Ziffern automatisch in wissenschaftliche Notation um, wenn sie verwendet werden in einem String-Kontext. Dies kann problematisch sein, wenn Sie große Zahlen anzeigen müssen, beispielsweise in einer URL.

Lösung:

Um die Konvertierung in die wissenschaftliche Notation zu verhindern, können Sie eine solche verwenden der folgenden Methoden:

Number.toFixed:

Diese Methode kann verwendet werden um die Anzahl der Dezimalstellen festzulegen, es wird jedoch die wissenschaftliche Notation für Zahlen größer oder gleich 1e21 verwendet.

Benutzerdefinierte Funktion:

Sie können eine benutzerdefinierte Funktion erstellen, um kümmere dich darum Konvertierung:

function toFixed(x) {
  if (Math.abs(x) < 1.0) {
    var e = parseInt(x.toString().split('e-')[1]);
    if (e) {
        x *= Math.pow(10,e-1);
        x = '0.' + (new Array(e)).join('0') + x.toString().substring(2);
    }
  } else {
    var e = parseInt(x.toString().split('+')[1]);
    if (e > 20) {
        e -= 20;
        x /= Math.pow(10,e);
        x += (new Array(e+1)).join('0');
    }
  }
  return x;
}

BigInt:

JavaScript unterstützt BigInt jetzt nativ (unterstützt von Chromium-basierten Browsern und Firefox). Sie können BigInt verwenden, um große ganze Zahlen darzustellen und zu verarbeiten, ohne sich um die wissenschaftliche Notation kümmern zu müssen:

const n = 13523563246234613317632;
console.log("BigInt: " + BigInt(n).toString());

Das obige ist der detaillierte Inhalt vonWie vermeide ich die wissenschaftliche Schreibweise beim Drucken großer Zahlen in JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn