首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

javascrip中为什么08,09转换成整型后是0呢?该怎么解决

2012-02-07 
javascrip中为什么08,09转换成整型后是0呢?functionsetmonth(mListBox,mSelected){varmonthListnewArray(

javascrip中为什么08,09转换成整型后是0呢?
function   setmonth(mListBox,   mSelected)   {
var   monthList   =   new   Array( "01 ",   "02 ",   "03 ",   "04 ",   "05 ",   "06 ",   "07 ",   "08 ",   "09 ",   "10 ",   "11 ",   "12 ");
        for   (var   i   =   0;   i   <=   monthList.length-1;   i++)   {    
      alert( "i== "+monthList[i]);
      alert( "parseInt= "+parseInt(monthList[i]));
        }
}


就像上面的代码一样,最后将08,09   变成整型之后就是0,这是为什么呢?
很着急,请大家帮帮忙

[解决办法]
alert(parseInt( "08 ",10));
alert(parseInt( "09 ",10));

[解决办法]
当在前面有 "0 "时,javascript的debugger会认为是一个八进制数,而 "08 "和 "09 "不是一个合法的八进制数,所以导致了那个问题

zhaoxiaoyang(梅雪香@深圳)指明是十进制则是对的
[解决办法]
以0开头的数值类型为八进制数.

热点排行