JavaScriptで半角数字のみかどうかのチェックを行うサンプルです。
正規表現を使ってマッチするかどうかだけです。
Program
数字を[0-9]で表現する場合
var s = "1234"; /^[0-9]*$/.test(s); // → true
数字を \d で表現する場合
var s = "0001234"; /^\d*$/.test(s); // → true
空白はエラーとする場合
var s = "9998765"; /^\d+$/.test(s); // → true
関数として作ると以下のようになります。
function isSuuji(s) { return /^[0-9]+$/.test(s); }
Demo
結果:
Memo
数字のみ → /^\d+$/ = 「数字が連なったもの」と表現すると、先頭が0でもチェックはOKとなります。
数字のみ → /^\d+$/ = 「数字が連なったもの」と表現すると、負の数で先頭が-(マイナス記号)でもチェックはNGとなります。