【jQuery】値が数値かどうかをチェックする方法

この記事は約2分で読めます。
広告

jQueryで値が数値かどうか判定する方法は「$.isNumeric()」を利用します。
使い方は次の通り。

値が数値か判断する方法

var num = 120;
if($.isNumeric(num)) {
  // 数値の時
} else {
  // それ以外
}
こちらが指定した値を「数値」か、「それ以外」かで判定する方法。


でもなぜだかわからないけど、このままだと全角数字だと「if」に入らない。
なので、下記のように書けば、全角数字も比較対象に入れることができます。

全角数字を数値に含めない比較方法

全角数字を「if」文で比較しつつ、数値に含めない場合の書き方は以下の通りです。
// 値が全角数字の時
var num = Number("1");
if($.isNumeric(num)) {
  // 数値の時
} else {
  // それ以外(全角数字も含む)
}
全角数字を数値に含めない場合の書き方でした。
「Number()」を利用すると、半角数字以外は「NaN」という文字列になります。
逆に全角数字を数値に含める場合は以下の書き方になります。

全角数字を数値に含める比較方法

全角数字を数値に含める場合は下記の方法で記述します。
// 全角数字を半角に変換する関数
function fw(str) {
  return str.replace(/[A-Za-z0-9]/g, function(s) {
    return String.fromCharCode(s.charCodeAt(0) - 0xFEE0);
  });
}
// 全角数字を半角に変換
var num = fw("999");

if($.isNumeric(num)) {
  // 数値の時(全角数字も含む)
} else {
  // それ以外
}
この「全角数字を半角に変換する関数」を利用して、全角の数字を半角にして比較するので
全角数字も数値に入れることができます。

以上です!
エンデ・バタローをフォローする
javascriptjQuery

東京に住み始めて7年目。

前は神戸に。その前は名古屋に住んでいました。

ある年の冬、車で島根県へ旅行に出かけました。
同県の山中にある寒村をゆるゆると走っていると地面が凍結しており
車ごと川に滑り落ちそうになった経験を持つ30代(男)です。

フロントエンドを始めて7年目になります。
エディタはAtomからVSCodeに乗り換え、日々の業務でイラレとフォトショ、HTMLとCSSとjavascriptとphpを使用してます。
仕事をしていて、検索する手間を省くためフロント技術ブログを書いています。

エンデ・バタローをフォローする
シェアする
広告
初めてのブログ

コメント

タイトルとURLをコピーしました