「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > JavaScript で正確な整数の検証を行う方法: どの方法が最適ですか?

JavaScript で正確な整数の検証を行う方法: どの方法が最適ですか?

2024 年 11 月 15 日に公開
ブラウズ:255

How to Ensure Accurate Integer Validation in JavaScript: Which Method is Best?

JavaScript で整数入力を検証する方法

データの整合性を確保するために整数をチェックする必要がある場合でも、ユーザーに正確なエラー メッセージを表示する必要がある場合でも、JavaScript には検証するためのメソッドがいくつか用意されています。 integer inputs.

一般的なアプローチの 1 つは、parseInt() 関数の使用です。ただし、整数として解析される可能性がある文字列などのシナリオを処理する場合は、この方法だけでは十分ではない可能性があります。

堅牢な整数検証関数

次の関数は、複数のチェックを組み合わせて堅牢性を確保します。整数の検証:

function isInt(value) {
  return !isNaN(value) &&
         parseInt(Number(value)) == value &&
         !isNaN(parseInt(value, 10));
}

この関数は数値文字列とプリミティブ数値の両方を処理できるため、正確な検証が保証されます。

パフォーマンスを向上させるためのビット単位の演算子

パフォーマンスが優先される場合は、ビット単位の演算子を利用できます。効率的な整数チェックの場合:

function isInt(value) {
  var x = parseFloat(value);
  return !isNaN(value) && (x | 0) === x;
}

このメソッドは、ビットごとの OR 演算子 (|) を使用して、入力を強制的に整数に変換します。結果が元の値と一致する場合、入力は整数です。

追加の検証オプション

整数の検証にはさらにいくつかのアプローチがあります:

  • ]parseFloat() によるショートサーキット:
function isInt(value) {
  if (isNaN(value)) return false;
  var x = parseFloat(value);
  return (x | 0) === x;
}
  • NaN 強制:
function isInt(value) {
  return !isNaN(value) && parseInt(value, 10) == value;
}
  • 真実 0 チェック:
function isInt(value) {
  return !isNaN(value) && parseInt(value, 10) && (parseInt(value, 10) | 0) === parseInt(value, 10);
}

適切な検証方法の選択は、アプリケーションの特定の要件とパフォーマンスに関する考慮事項によって異なります。

最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3