読了: 約 1 分

基礎的な事でしたが、日付をつかう機能の実装中に発見したのでメモ。

恐らくos4.4以上は大丈夫
JavaScriptのparserの問題。それ以外の場合は、8進数で返ってきて、例えば2014/09みたいな感じの時に0になるという悲惨な事態に。第二引数に10を記述するだけで解決。とほほ。

parseInt('09',8)
0

parseInt関数

2番目の引数には基数を指定します。指定できる値は「2」「8」「10」「16」です。例えば基数に2を指定した場合、対象の文字列が「11」だった場合には2進数の11として解釈し結果を10進数の3で返します。また基数を16に指定した場合、対象の文字列が「11」だった場合には16進数の11として解釈し結果を10進数の17として返します。

parseInt(“11”, 2) –> 3
parseInt(“11”, 8) –> 9
parseInt(“11”, 10) –> 11
parseInt(“11”, 16) –> 17

http://www.ajaxtower.jp/js/global_function/index1.html

photo credit: everypost6 via photopin (license)