This question already has answers here:
How to avoid scientific notation for large numbers in JavaScript?
(21个回答)
5年前关闭。
我的数据返回了JSON响应,但是当我尝试使用值(数字)之一时,响应将转换为科学计数法。我从未遇到过这样的事情,所以我将要发布正在发生的事情。
当我使用
(21个回答)
5年前关闭。
我的数据返回了JSON响应,但是当我尝试使用值(数字)之一时,响应将转换为科学计数法。我从未遇到过这样的事情,所以我将要发布正在发生的事情。
当我使用
console.log(response)
时,该值看起来像doctorid":2015031216033174968087
,而当我尝试使用Doctorid时,该值则变为2.015031216033175e+21
。即使我使用console.log(response.doctorid)
在控制台中输出值,也会发生这种情况。知道什么可能导致这种行为吗? 最佳答案
与python和ruby不同,Javascript不支持任意精度的整数。可以在JS中精确表示的最大数值为9007199254740991
。较大的数字具有近似表示形式,并使用科学计数法转换为字符串。
避免这种情况的唯一方法是将ID编码为JSON中的字符串:
"doctorid": "2015031216033174968087"
10-08 16:59