23 of 264 menu

Funcția isFinite

Funcția isFinite pentru verificarea parametrului asupra faptului că acesta este un număr finit (adică nu șir, matrice etc. și nu plus sau minus infinit).

Cum funcționează această funcție: va returna false, dacă numărul este plus sau minus infinit (adică Infinity) sau nu este un număr (adică NaN), în restul cazurilor va returna true. Adică șirurile, matricele etc. vor fi transformate în NaN și, în consecință, vor returna false.

Cu toate acestea, există excepții: șirul gol '' returnează true, șirul cu spații '    ' de asemenea returnează true, null returnează true, pentru valorile true și false de asemenea se returnează true.

Acest lucru se întâmplă pentru că aceste valori sunt transformate în numere, și nu în NaN. Dacă aveți nevoie de o verificare cu adevărat precisă a numărului, care nu consideră număr șirul format din spații, valorile logice și speciale - utilizați următoarea funcție isNumeric:

function isNumeric(num) { return !isNaN(parseFloat(num)) && isFinite(num); };

Să înțelegem cum funcționează ea. Funcția isFinite transformă parametrul într-un număr și returnează true, dacă acesta nu este Infinity, -Infinity sau NaN. Astfel, partea dreaptă va elimina clar non-numerele, dar va lăsa astfel de valori ca true, false, null, șirul gol '' și șirul cu spații, deoarece acestea se transformă corect în numere.

Pentru a elimina aceste valori, este nevoie de funcția parseFloat, care pentru true, false, null, '', '   ' va returna NaN. Așa este construită funcția parseFloat: ea transformă parametrul în șir, adică true, false, null devin 'true', 'false', 'null', apoi citește din el numărul, în acest caz șirul gol și șirul cu spații dau NaN. Apoi rezultatul parseFloat este procesat cu ajutorul !isNaN, pentru a obține true sau false în loc de NaN. Ca rezultat, este eliminat totul, cu excepția șirurilor-numere și numerelor obișnuite.

Sintaxă

isFinite(valoare);

Exemplu

Acum isFinite va afișa true, deorece parametrul este un număr:

let num = 3; console.log(isFinite(num));

Rezultatul executării codului:

true

Exemplu

Acum isFinite va afișa false, deorece parametrul nu este un număr:

let num = 'abcde'; console.log(isFinite(num));

Rezultatul executării codului:

false

Exemplu

Acum isFinite va afișa false, deorece parametrul este infinit:

let num = Infinity; console.log(isFinite(num));

Rezultatul executării codului:

false

Exemplu

Acum isFinite va afișa false, deorece 1/0 - este în esență Infinity (infinit):

let num = 1 / 0; console.log(isFinite(num));

Rezultatul executării codului:

false

Exemplu

Acum isFinite va afișa true, deorece șirul gol, care nu este un număr, - este o excepție:

let num = ''; console.log(isFinite(num));

Rezultatul executării codului:

true

Vedeți și

  • funcția isNaN,
    care realizează verificarea pentru NaN
  • operatorul typeof,
    care determină tipul de date
Română
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Folosim cookie pentru funcționarea site-ului, analiză și personalizare. Prelucrarea datelor are loc în conformitate cu Politica de confidențialitate.
acceptă toate configurează respinge