JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

JavaScriptで0〜255の範囲の数値のみを受け入れる方法

JavaScriptである数値が特定の範囲(この場合は0〜255)に含まれているかどうかを判定し、その範囲の数値のみを受け入れるには、if else 条件文を使うのが最もシンプルで分かりやすい方法です。

基本的な考え方

チェックしたい数値が 0未満、または 255より大きい 場合は範囲外として false を返し、それ以外の場合は範囲内として true を返す関数を作成します。論理OR演算子(||)を使うことで、2つの条件を1つのif文でまとめて評価できます。

サンプルコード

以下は、0〜255の範囲にある数値のみを受け入れる関数の実装例です。

function checkRangeDemo(number) {
    if (number < 0 || number > 255) {
        return false;
    }
    else {
        return true;
    }
}

var number = 55;
if (checkRangeDemo(number) == true)
    console.log(number + " is in range")
else
    console.log(number + " is not in range")

var number1 = 350;
if (checkRangeDemo(number1) == true)
    console.log(number1 + " is in range")
else
    console.log(number1 + " is not in range")

プログラムの実行方法

上記のプログラムを実行するには、Node.jsがインストールされた環境で以下のコマンドを使用します。

node fileName.js.

ここでは、ファイル名を demo261.js として保存した場合の例を示します。

実行結果

コンソールには次のような出力が表示されます。

PS C:\Users\Amit\javascript-code> node demo261.js
55 is in range
350 is not in range

55 は0〜255の範囲内なので「in range」と判定され、350 は255を超えているため「not in range」と判定されていることが確認できます。

応用:入力値の検証にも活用できる

このような範囲チェックは、フォーム入力のバリデーションや、RGBカラー値(各チャンネル0〜255)の検証など、さまざまな場面で役立ちます。より厳密にチェックしたい場合は、整数かどうかの確認も組み合わせると安全です。

function checkRangeStrict(value) {
    return Number.isInteger(value) && value >= 0 && value <= 255;
}

このように Number.isInteger() を組み合わせることで、小数や文字列などの不正な入力も弾くことができ、より堅牢なバリデーションが実現できます。

  1. JavaScriptで数値のみに一致する正規表現の使い方

    JavaScriptで文字列から数値(数字)だけを抽出したい場合、正規表現を使うのが最も簡単な方法です。本記事では、\d を使った基本的なパターンから、実用的なサンプルコードまでわかりやすく解説します。 数値に一致する正規表現の基本 半角数字1文字に一致する正規表現は /\d/ です。\d は「digit(数字)」を意味するメタ文字で、0〜9のいずれか1文字にマッチします。 さらに、末尾に g フラグ(グローバルフラグ)を付けると、文字列内のすべての数字に一致させることができます。フラグを付けない場合は、最初の1件しかマッチしないので注意してください。 サンプルコード 以下のコードは、文字列か

  2. JavaScriptの範囲オーバーフロー・範囲アンダーフロー(rangeOverflow/rangeUnderflow)プロパティの使い方

    rangeOverflow・rangeUnderflowプロパティとはJavaScriptでは、フォーム要素の validity プロパティ(ValidityStateオブジェクト)を利用することで、ユーザーが入力した値が条件を満たしているかどうかを簡単に検証できます。この中には、数値の入力範囲をチェックするための「rangeOverflow」と「rangeUnderflow」という2つのプロパティが用意されています。Range Underflow(範囲アンダーフロー)入力要素の値が、min属性で指定された最小値よりも小さい場合、validity.rangeUnderflow は true を