Löst: Kontrollera om strängen bara innehåller heltalssiffror siffror javascript

Det största problemet med att kontrollera om en sträng bara innehåller heltalssiffror är att det inte finns någon definierad standard för hur man gör detta. Detta kan leda till att olika implementeringar ger olika resultat, vilket kan vara svårt att förstå och felsöka.

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.)

villkors

Villkor är ett kraftfullt verktyg i JavaScript. De låter dig styra flödet av din kod baserat på att vissa villkor är uppfyllda.

En vanlig användning för villkor är att kontrollera om en variabel är lika med ett visst värde. Du kanske till exempel vill visa ett felmeddelande om en användares inmatning inte är giltig.

Du kan använda if-satsen för att testa om ett villkor är sant eller falskt. Följande kodexempel kontrollerar om användarens inmatning är mellan 1 och 10:

if (userInput <= 10) { // Visa ett felmeddelande } else { // Visa det normala svaret } Du kan också använda switch-satsen för att testa flera villkor samtidigt. Följande kodexempel kontrollerar om användarens inmatning är mellan 1 och 10, har en längd på minst 3 tecken och börjar med en bokstav: switch (userInput) { case "1": case "2": case "3": case "a": case "b": case "c": break; default: // Visa ett felmeddelande }

Om annat

If är en villkorlig operator i JavaScript. Det låter dig välja mellan två möjliga utfall. Det första resultatet är villkoret och det andra resultatet är resultatet av if-satsen.

Om du vill kontrollera om ett tal är jämnt eller udda kan du använda följande kod:

if (tal % 2 == 0) { //jämn } annat { //udda }

Den andra klausulen kommer att köras om numret inte är jämnt.

Relaterade inlägg:

Lämna en kommentar