我有以下代码:
<script type="javascript">
var item = 001002004;
alert(item);
</script>
每当我在网络浏览器中的查看源中看到此页面时,我都会看到这些代码与此处完全相同。但是当alert()
函数运行时,我看到一条未知消息。它超过'6295553'。我不知道这个未知价值来自哪里。我确信item
没有发生任何事情,并且在alert
之前没有发生任何变化。
答案 0 :(得分:5)
任何前缀为0的数字都将被视为八进制。和十六进制的0x
我猜你是把它作为一个像下面这样的数值,或者使用parseInt函数来解析字符串,当你提醒它时你会看到不同的值..
var item = 001002004;
alert(item);
或者你可能正在做类似下面的事情
var item = '001002004';
alert(parseInt(item));
查看parseInt @MDN
的详细信息<强> DEMO HERE 强>
答案 1 :(得分:1)
尝试将脚本类型更改为“text / javascript”<script type="text/javascript">
,或者根本不使用type
属性。见this jsfiddle
答案 2 :(得分:0)
请看看上面的小提琴。它没有提醒我任何异常。
答案 3 :(得分:0)
你确定你没有改变变量 - 可能带帽。例如
var item = 'some value';
alert(Item);