JavaScript で正確な整数の検証を行う方法: どの方法が最適ですか?
JavaScript で整数入力を検証する方法
データの整合性を確保するために整数をチェックする必要がある場合でも、ユーザーに正確なエラー メッセージを表示する必要がある場合でも、JavaScript には検証するためのメソッドがいくつか用意されています。整数入力。
一般的なアプローチの 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; }
ログイン後にコピー
- Truthy 0 Check:
function isInt(value) { return !isNaN(value) && parseInt(value, 10) && (parseInt(value, 10) | 0) === parseInt(value, 10); }
ログイン後にコピー
適切な検証方法の選択は、アプリケーションの特定の要件とパフォーマンスに関する考慮事項によって異なります。
以上がJavaScript で正確な整数の検証を行う方法: どの方法が最適ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
2週間前
By 尊渡假赌尊渡假赌尊渡假赌
レポ:チームメイトを復活させる方法
4週間前
By 尊渡假赌尊渡假赌尊渡假赌
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD
R.E.P.O.ファイルの保存場所:それはどこにあり、それを保護する方法は?
3週間前
By DDD

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック
Gmailメールのログイン入り口はどこですか?
7315
9


Java チュートリアル
1625
14


CakePHP チュートリアル
1348
46


Laravel チュートリアル
1261
25


PHP チュートリアル
1208
29

