読者です 読者をやめる 読者になる 読者になる

input要素のvalue属性の数値の扱いで詰まった

<input type="range" value="1" />
var input = document.getElementsByTagName('input')[0];
input.value;  // 数値?

input要素のvalueを取得して使うときに、input.valueを数値だと思い込んでたら、なんかうまくいない場所があった。

実は数値じゃなくて文字列だった。

typeof input.value;  // "string"

というわけで、Number()やperseInt()で数値に型変換すればよかった。

typeof Number(input.value);    // "number"
typeof parseInt(input.value);  // "number"