23 of 264 menu

Kazi isFinite

Kazi isFinite inatumika kukagua parameta kuona ikiwa ni nambari ya mwisho (yaani sio mfuatano, safu, n.k. wala sio ukomo wa pamoja au hasi).

Kazi hii inavyofanya kazi: itarudisha false, ikiwa nambari ni ukomo wa pamoja au hasi (yaani Infinity) au sio nambari (yaani NaN), katika hali zingine zote itarudisha true. Yaani mifuatano, safu, n.k. itabadilishwa kuwa NaN na kwa hivyo itarudisha false.

Hata hivyo, kuna vizuizi: mfuatano tupu '' hurudisha true, mfuatano wenye nafasi '    ' pia hurudisha true, null hurudisha true, kwa maadili true na false pia hurudishiwa true.

Hii hutokea kwa sababu maadili haya hubadilishwa kuwa nambari, na sio NaN. Iwapo unahitaji ukaguzi wa kweli wa nambari, ambao hauzingatii mfuatano wa nafasi kuwa nambari, maadili ya kimantiki na maadili maalum - tumia kazi ifuatayo isNumeric:

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

Hebu tuelewe jinsi inavyofanya kazi. Kazi isFinite inabadilisha parameta kuwa nambari na kurudisha true, ikiwa hii sio Infinity, -Infinity au NaN. Kwa hivyo, sehemu ya kulia itatenga kwa hakika yasiyo nambari, lakini itaacha maadili kama true, false, null, mfuatano tupu '' na mfuatano wenye nafasi, kwa sababu hubadilika vyema kuwa nambari.

Ili kutenga maadili haya, inahitajika kazi parseFloat, ambayo kwa true, false, null, '', '   ' itarudisha NaN. Hivi ndivyo kazi parseFloat inavyofanya kazi: hii inabadilisha parameta kuwa mfuatano, yaani true, false, null hubadilika kuwa 'true', 'false', 'null', na kisha husoma nambari kutoka humo, wakati huo huo mfuatano tupu na mfuatano wenye nafasi hutoa NaN. Kisha matokeo ya parseFloat hushughulikiwa kwa kutumia !isNaN, ili kupata true au false badala ya NaN. Kwa matokeo, kila kitu kinatengwa, isipokuwa mifuatano-nambari na nambari za kawaida.

Sintaksia

isFinite(thamani);

Mfano

Sasa isFinite itatoa true, kwa sababu parameta ni nambari:

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

Matokeo ya utekelezaji wa kodi:

true

Mfano

Sasa isFinite itatoa false, kwa sababu parameta sio nambari:

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

Matokeo ya utekelezaji wa kodi:

false

Mfano

Sasa isFinite itatoa false, kwa sababu parameta ni ukomo:

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

Matokeo ya utekelezaji wa kodi:

false

Mfano

Sasa isFinite itatoa false, kwa sababu 1/0 - kwa hakika ni Infinity (ukomo):

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

Matokeo ya utekelezaji wa kodi:

false

Mfano

Sasa isFinite itatoa true, kwa sababu mfuatano tupu, ambao sio nambari, - ni ubaguzi:

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

Matokeo ya utekelezaji wa kodi:

true

Angalia pia

  • kazi isNaN,
    ambayo inafanya ukaguzi wa NaN
  • kiendeshaji typeof,
    ambao huamua aina ya data
Kiswahili
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Tunatumia kuki kwa ajili ya uendeshaji wa tovuti, uchambuzi na ubinafsishaji. Usindikaji wa data unafanyika kulingana na Sera ya Faragha.
kubali yote sanidi kataa