0
我做了一个脚本,生成一个1和一个googol(它是一个由1和100个零组成的数字)之间的数字,但它不能精确地显示数字。它使数字像“7.463677302002907e + 99”,这不是我想要的。我对JavaScript很陌生,但我设法做到了这一点。 这里是代码:如何让Javascript显示非常大的数字?
<html>
<body>
<title>Random number between 1 an a googol-generator</title>
<p id="demo">Click the button to display a random number between 1 and a googol.</p>
<button onclick="myFunction()">Generate</button>
<script>
function myFunction()
{
var x=document.getElementById("demo")
x.innerHTML=Math.floor((Math.random()*10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000)+1);
}
</script>
</body>
</html>
您的发电机并没有真正产生一个随机数天文数字。由于浮点数有限制的小数点,Math.random()不会返回由100位数组成的十进制数。 – RononDex
生成1到100之间的随机数是否更有用,然后生成许多随机数并将它们串在一起?或者你真的想为这个数字使用任何东西,因为那样你就需要一个大的整数库,参见例如http://stackoverflow.com/questions/3072307/is-there-a-bignum-library-for-javascript – CompuChip
JavaScript的数字使用[双精度浮点](https://en.wikipedia.org/wiki/ Double-precision_floating-point_format)格式,其精度只有15到17个十进制数字。如果你完全写出了这个数字,那么大部分都是零。 – Boann