15

重複の可能性:
JavaScript parseInt 8 進数バグの回避策

私はjavascriptに取り組んでいますが、javascript関数parseInt('08')が0を返し、parseInt('07')が7を返すという奇妙なことに気付いたようです。

この動作は Firefox にあるようです。

parseInt('08') は IE では 8 を返しますが、Firefox では 0 を返します。

なんで?parseInt('08') が 8 を返すようにしたいのですが、予想どおり、IE に入ります。

4

1 に答える 1

32

ええ、私は前にこれに出くわしました。一部のブラウザーはこれを base 8 で解析したいと解釈するため、これは非常に奇妙です。次の記事を検討してください。

http://www.breakingpar.com/bkp/home.nsf/0/87256B280015193F87256C85006A6604

基本的に、10 進数を使用するようにパーサーに指示する必要があります。

parseInt('08', '10');
于 2012-08-02T22:30:19.040 に答える