« Previous Entry | Main | Next Entry »

parseInt("010")

Author:  |  | (0) comments

文字列を数値に変換する場合parseIntを使うが、parseInt("010")としたときに8が返ってくる。文字列で"010"は8進数と解釈されるためおこっている様子。(先頭が"0"だと8進数と解釈される) "001"〜"009"は通常通り1〜9の数値が返るが"010"以降で文字列に"8"を含まない場合同じことがおこる。ex."01234567" 頭の"0"をとってからparseIntしてやることで回避できた。
var n = "010";
if(n.substr(0, 1) == "0") {
	n = parseInt(n.substr(1));
}

(0) comments:

Leave a comment:

 
 
 
Recent Entry
Category Archive
Monthly Archive
About
Powered by
Movable Type 3.33-ja