0

重複の可能性:
Javascript parseInt が非常に予期しない結果をもたらす

javascript がparseInt(08)andparseInt(09)をゼロとして解釈するのに、01 から 07 ですべてが正しく行われる理由を誰かが説明できますか?

parseFloatこれらの値の正しい値が得られますが、答えが見つかりませんでした.なぜjavascriptが8と9に対してのみこれを行うのか.

参考までに、先頭のゼロは時間 (時:分) です。

より良い例については、次のリンクをご覧ください: http://jsfiddle.net/NPtzA/3/ そこで、この予期しない動作を確認できます。

4

1 に答える 1

0

parseInt関数は、対象の数値システムの正しい基数を決定しようとしているため、0 を返します。

良いことであるかどうかにかかわらず、先頭に 0 がある JavaScript の数値はすべて 8 進数と見なされます。つまり、08 や 09 はありません。

それが役立つことを願っています。

編集:使用する数値システムを変更するために10パラメーターを追加するフィドルの私の編集をチェックしてくださいhttp://jsfiddle.net/jbrooksuk/NPtzA/5/parseInt

于 2011-05-09T09:41:06.707 に答える