2006/07/20 | JavaScript中一个有趣的问题
类别(我的文档[原创]) | 评论(0) | 阅读(48) | 发表于 21:07
前阵子碰到一个一个有趣的问题,反复测才恍然大悟
如下代码会输出的结果会是什么?
<script language="javascript">
document.write(parseInt('00') + "-" + parseInt('01') + "-" + parseInt('02') + "-" + parseInt('03') + "-" + parseInt('04') + "-" + parseInt('05') + "-" + parseInt('06') + "-" + parseInt('07') + "-" + parseInt('08') + "-" + parseInt('09'));
</script>
正常应该会是0-1-2-3-4-5-6-7-8-9
但是结果不是这样的,正确的结果是:0-1-2-3-4-5-6-7-0-0
有的人肯定又得怪说javascript的Bug或者javascript不稳定如何如何了。其实要怪的应该是自己。
如果这么写大家相信都会恍然大悟了:parseInt('00',10),因为要转化的字符串以0开头,所以被认为是8进制的转化08当然就不行了。

看来有时间还得复习下基础了

0

评论Comments