Išspręsta: patikrinkite, ar eilutėje yra tik sveikieji skaitmenys, skaičiai javascript

Pagrindinė problema tikrinant, ar eilutėje yra tik sveikieji skaitmenys, yra ta, kad nėra apibrėžto standarto, kaip tai padaryti. Dėl to skirtingi diegimai gali pateikti skirtingus rezultatus, kuriuos gali būti sunku suprasti ir derinti.

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

Sąlygos

Sąlygos yra galingas JavaScript įrankis. Jie leidžia valdyti kodo srautą, atsižvelgiant į tam tikras sąlygas.

Vienas iš dažniausiai naudojamų sąlygų yra patikrinti, ar kintamasis yra lygus tam tikrai reikšmei. Pavyzdžiui, jei vartotojo įvestis neteisinga, galbūt norėsite parodyti klaidos pranešimą.

Jei norite patikrinti, ar sąlyga teisinga, ar klaidinga, galite naudoti teiginį „if“. Šis kodo pavyzdys patikrina, ar naudotojo įvestis yra nuo 1 iki 10:

if (userInput <= 10) { // Rodyti klaidos pranešimą } else { // Rodyti įprastą atsakymą } Taip pat galite naudoti jungiklio teiginį, kad vienu metu patikrintumėte kelias sąlygas. Toliau pateiktame kodo pavyzdyje patikrinama, ar vartotojo įvestis yra nuo 1 iki 10, ar jos ilgis yra bent 3 simboliai ir ar ji prasideda raide: switch (userInput) { atvejis "1": atvejis "2": atvejis "3": atvejis "a": atvejis "b": atvejis "c": pertrauka; numatytasis: // Rodyti klaidos pranešimą }

Jei, kitaip

If yra sąlyginis operatorius JavaScript. Tai leidžia pasirinkti vieną iš dviejų galimų rezultatų. Pirmasis rezultatas yra sąlyga, o antrasis rezultatas yra if teiginio rezultatas.

Jei norite patikrinti, ar skaičius yra lyginis ar nelyginis, galite naudoti šį kodą:

if (skaičius % 2 == 0) { //lyginis } else { //nelyginis }

Kita sąlyga bus vykdoma, jei skaičius nėra lyginis.

Susijusios naujienos:

Palikite komentarą