解決済み: 文字列に整数の数字のみが含まれているかどうかを確認する javascript

文字列に整数の数字のみが含まれているかどうかを確認する際の主な問題は、これを行う方法について定義された標準がないことです。 これにより、異なる実装が異なる結果を返す可能性があり、理解とデバッグが困難になる可能性があります。

I want to check if a string only contains integer digits numbers.
For example:
<code>var str = "123"; // return true;
var str = "123a"; // return false;
</code>


A:

You can use <code>/^d+$/.test(str)</code>.  This will test whether the string consists of one or more digits.  If you want to allow for a leading minus sign, then use <code>/^-?d+$/.test(str)</code>.  If you want to allow for an optional decimal point and fractional part, then use <code>/^-?d+(.d+)?$/.test(str)</code>.  If you want to allow for an optional exponent, then use <code>/^-?(d+(.d*)?|.d+)([eE][-+]?d+)?$/.test(str)</code>.  The last two expressions are the ones used by the built-in function <code>isFinite()</code>, which is what you should be using if your goal is to test whether a string can be converted into a number.  (If your goal is something else, please edit your question.)

条件式

条件は JavaScript の強力なツールです。 特定の条件が満たされていることに基づいて、コードのフローを制御できます。

条件の一般的な用途の XNUMX つは、変数が特定の値と等しいかどうかを確認することです。 たとえば、ユーザーの入力が無効な場合にエラー メッセージを表示することができます。

if ステートメントを使用して、条件が true か false かをテストできます。 次のコード例では、ユーザーの入力が 1 から 10 の間であるかどうかを確認します。

if (userInput <= 10) { // エラー メッセージを表示する } else { // 通常の応答を表示する } switch ステートメントを使用して、一度に複数の条件をテストすることもできます。 次のコード例では、ユーザーの入力が 1 ~ 10 で、長さが 3 文字以上で、文字で始まるかどうかを確認します: switch (userInput) { case "1": case "2": case "3":ケース "a": ケース "b": ケース "c": ブレーク; default: // エラーメッセージを表示します }

もし、そうでなければ

If は JavaScript の条件演算子です。 XNUMX つの可能な結果のいずれかを選択できます。 最初の結果は条件で、XNUMX 番目の結果は if ステートメントの結果です。

偶数か奇数かを確認したい場合は、次のコードを使用できます。

if (number % 2 == 0) { //偶数 } else { //奇数 }

数値が偶数でない場合、else 句が実行されます。

関連記事:

コメント