您好我的javascript代码如下。
<script>
var fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits;
function myFunction() {
fruits.push(611087636212662272);
document.getElementById("demo").innerHTML = fruits;
}
</script>
输出
Banana,Orange,Apple,Mango,611087636212662300
我需要输出为:
Banana,Orange,Apple,Mango,611087636212662272
我进入&#34; 611087636212662272&#34;那么为什么Javascript会返回&#34; 611087636212662300&#34;作为输出。
我该如何解决这个问题?
答案 0 :(得分:0)
解决方案 - 添加&#34;在值中,它将为fruits数组添加精确值。
fruits.push("611087636212662272"); // this will push exact value
答案 1 :(得分:0)
数字太大而且精度不高。 JavaScript数字是64位浮点值,最大精确整数值是2 ^ 53,或9007199254740992.
请注意,幅度不大于2 ^ 53的所有正整数和负整数都可以在Number类型中表示(实际上,整数0有两个表示,+ 0和-0)。
答案 2 :(得分:0)
这是达成的另一种方式
var fruits = ["Banana", "Orange", "Apple", "Mango"];
var fruitNum = fruits + ' 611087636212662272';
document.getElementById("demo").innerHTML = fruitNum;