JavaScriptのparseIntメソッドについての注意点

JavaScriptでのparseIntメソッドには引数を1つのものと2つのものが存在する。

注意が必要となるのは引数が1つのものを使用する場合で、「01」といった0が先頭につく数値については8進数として変換を行ってしまう。
更に厄介なこととして、「08」、「09」を変換した場合に以下のようなことが発生する。
parseInt("08")を実行⇒8進数への変換を試みるが…8進数には8,9が存在しない⇒8,9は文字列として判定する。⇒結果として0のみが評価される。(数値の後の数字以外は判定を飛ばす)⇒「0」が結果として出力される。

対策としては引数が2つのparseIntを使用して変換を行うことが挙げられる。
第二引数は変換を行う基数を指定することができる。
明示的に基数を指定し、上記の自動基数変換対策を行うことが良いでしょう。

参考にしたページ
parseInt関数 - グローバル関数 - JavaScript入門