Comment imprimer de grands nombres sans notation scientifique en JavaScript ?
JavaScript convertit automatiquement les entiers de plus de 21 chiffres en notation scientifique lorsqu'ils sont utilisés dans un contexte de chaîne. Cela peut être problématique lorsque vous devez afficher de grands nombres, comme dans une URL.
Solution :
Pour empêcher la conversion en notation scientifique, vous pouvez en utiliser un des méthodes suivantes :
Number.toFixed :
Cette méthode peut être utilisée pour fixe le nombre de décimales, mais il utilise la notation scientifique pour les nombres supérieurs ou égaux à 1e21.
Fonction personnalisée :
Vous pouvez créer une fonction personnalisée pour gérer cette conversion :
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 prend désormais en charge BigInt de manière native (pris en charge par les navigateurs basés sur Chromium et Firefox). Vous pouvez utiliser BigInt pour représenter et gérer de grands entiers sans vous soucier de la notation scientifique :
const n = 13523563246234613317632; console.log("BigInt: " + BigInt(n).toString());
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!