我在javascript中偶然发现了一些奇怪的自动解析数字行为。
我有一些产品对象要显示在一个标签组件(jquery UI)中,这些对象只是临时的,所以我为它们中的每一个准备了一些唯一的ID。我生成它们看起来像这样:540718791327b
这是我的脚本,用它来识别我实际工作的那个标签,此刻在某个时刻停止工作。直到我做了一些调试,我才知道发生了什么。我注意到我在源代码中的uid是这样的:5407153722e09
被javascript读取为一个数字:5407153722000000000
。似乎javascript将我的号码视为科学记数法。
不幸的是我无法用jsfiddle重现它,但是这样你就知道我在做什么:http://jsfiddle.net/7a3952qt/
通常在我的电脑上console.log(uid)
返回5407153722000000000而不是5407153722e09。 (在我的网页上,在jsfiddle上工作正常)
也许有人知道可能会发生什么?这样的行为可能是什么原因?