23 of 264 menu

Funksioni isFinite

Funksioni isFinite përdoret për të kontrolluar nëse parametri është një numër i fundëm (pra jo string, array etj. dhe jo plus ose minus pafundësi).

Si funksionon ky funksion: ai do të kthejë false, nëse numri është plus ose minus pafundësi (pra Infinity) ose jo numër (pra NaN), në raste të tjera do të kthejë true. Pra stringjet, arrayet etj. do të shndërrohen në NaN dhe në përputhje me rrethanat do të kthejnë false.

Megjithatë ka përjashtime: një string bosh '' kthen true, një string me hapësira '    ' gjithashtu kthen true, null kthen true, për vlerat true dhe false gjithashtu kthehet true.

Kjo ndodh sepse këto vlera shndërrohen në numra, jo në NaN. Nëse keni nevojë për një kontroll vërtet të saktë të numrit, e cila nuk e konsideron si numër një string me hapësira, vlera boolean dhe vlera speciale - përdorni funksionin e mëposhtëm isNumeric:

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

Le të kuptojmë se si funksionon ai. Funksioni isFinite e shndërron parametrin në numër dhe kthen true, nëse ky nuk është Infinity, -Infinity ose NaN. Kështu, pjesa e djathtë do të filtrojë qartë jo-numrat, por do të lërë vlera të tilla si true, false, null, stringun bosh '' dhe stringun me hapësira, sepse ato shndërrohen në mënyrë korrekte në numra.

Për të filtruar këto vlera, nevojitet funksioni parseFloat, i cili për true, false, null, '', '   ' do të kthejë NaN. Kështu funksionon parseFloat: ai e shndërron parametrin në string, pra true, false, null bëhen 'true', 'false', 'null', dhe pastaj lexon prej saj një numër, ku një string bosh dhe një string me hapësira japin NaN. Pastaj rezultati parseFloat përpunohet duke përdorur !isNaN, për të marrë true ose false në vend të NaN. Si rezultat, filtrohet gjithçka, përveç stringjeve-numra dhe numrave të zakonshëm.

Sintaksa

isFinite(vlera);

Shembull

Tani isFinite do të nxjerrë true, pasi parametri është një numër:

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

Rezultati i ekzekutimit të kodit:

true

Shembull

Tani isFinite do të nxjerrë false, pasi parametri nuk është një numër:

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

Rezultati i ekzekutimit të kodit:

false

Shembull

Tani isFinite do të nxjerrë false, pasi parametri është pafundësi:

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

Rezultati i ekzekutimit të kodit:

false

Shembull

Tani isFinite do të nxjerrë false, pasi 1/0 - kjo në thelb është Infinity (pafundësi):

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

Rezultati i ekzekutimit të kodit:

false

Shembull

Tani isFinite do të nxjerrë true, pasi një string bosh, i cili nuk është numër, - është një përjashtim:

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

Rezultati i ekzekutimit të kodit:

true

Shihni gjithashtu

  • funksionin isNaN,
    i cili kryen kontrollin për NaN
  • operatorin typeof,
    i cili përcakton llojin e të dhënave
Shqip
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ne përdorim cookie për funksionimin e sajtit, analizën dhe personalizimin. Përpunimi i të dhënave bëhet në përputhje me Politikën e Privatësisë.
prano të gjitha konfiguro refuzo