Muunna merkkijono kokonaisluvuksi JavaScriptissä

JavaScriptissä on melko yleistä, että numero on loukussa merkkijonon sisällä. Tämä voi tapahtua, kun käsittelet käyttäjän syötteitä, luet tietoja tiedostosta tai työskentelet kolmannen osapuolen API:n kanssa. Mutta JavaScript tarjoaa useita käteviä tapoja vapauttaa tämä numero ja muuntaa se kokonaisluvuksi. Tämä on erittäin hyödyllistä, kun sinun on tehtävä matematiikkaa tai vertailuja näiden numeroiden kanssa.

Sisällysluettelo

Lähestymistapa 1: Muunna merkkijono kokonaisluvuksi käyttämällä parseInt()-menetelmää

The parseInt() -menetelmä hyväksyy merkkijono- ja kantaluku-parametrin ja muuntaa sen kokonaisluvuksi.

Syntaksi:

parseInt( Value, radix ) 

Esimerkki: Tässä tapauksessa käytämme JavaScript parseInt() -menetelmää merkkijonon muuntamiseen kokonaisluvuksi.

javascript
let a = '100'; console.log('Type of a before conversion: ' + typeof a); console.log('Type of a after conversion: ' + typeof parseInt(a)); 

Lähtö
Type of a before conversion: string Type of a after conversion: number 

Selitys

Koodi alustaa muuttujan a> merkkijonolla 100, tulostaa sen tyypin ennen ja jälkeen sen muuntamisen kokonaisluvuksi käyttämällä parseInt()>

Lähestymistapa 2: Muunna merkkijono kokonaisluvuksi käyttämällä Number()-menetelmää

The numero()-menetelmä käytetään primitiivisen tietotyypin muuntamiseen luvuksi, jos se ei ole muunnettavissa, se palauttaa NAN:n.

Syntaksi:

Number( value ) 

Esimerkki: Tässä käytämme JavaScript Number() -menetelmää merkkijonon muuntamiseen kokonaisluvuksi.

Javascript
let age = '23'; let name = 'Manya'; console.log(  'Type of name and age before conversion: ',   typeof age, typeof name ); console.log(  'Type of name and age after conversion: ',   typeof Number(age), typeof Number(name) ); 

Lähtö
Type of name and age before conversion: string string Type of name and age after conversion: number number 

Selitys

Koodi alustaa muuttujat age> ja name> merkkijonoarvoilla, jotka edustavat ikää ja nimeä. Sitten se näyttää niiden tyypit ennen ja jälkeen muuntamisen numeroiksi käyttämällä Number()> .

Lähestymistapa 3: Muunna merkkijono kokonaisluvuksi käyttämällä Unary-operaattoria

The Yksittäisoperaattori (+) käytetään muuntamaan merkkijono, looginen arvo ja ei-merkkijono luvuksi.

Syntaksi:

+operand; 

Esimerkki:

The yksipuolinen operaattori muuttaaksesi merkkijonon luvuksi.

Javascript
let age = '23'; let name = 'Manya'; const number = '100'; console.log(  'Type of name, age and number before conversion: ',   typeof age, typeof name, typeof number ); console.log(  'Type of name, age and number after conversion: ',   typeof +age, typeof +name, typeof +number ); 

Lähtö
Type of name, age and number before conversion: string string string Type of name, age and number after conversion: number number number 

Selitys

Koodi alustaa muuttujat age> , name> , ja number> merkkijonoarvoilla, jotka edustavat ikää, nimeä ja vakionumeroa. Sitten se näyttää niiden tyypit ennen ja jälkeen muuntamisen numeroiksi käyttämällä unaari plus -operaattoria +> .

Lähestymistapa 4: Muunna merkkijono kokonaisluvuksi käyttämällä Math.floor()-menetelmää

The Math.floor()-menetelmä käytetään merkkijonon muuntamiseen luvuksi.

Syntaksi:

Math.floor( numStr ) 

Esimerkki:

Math.floor()-menetelmää käytetään merkkijonon muuntamiseen luvuksi.

Javascript
let numStr = '101.45'; let numInt = Math.floor(parseFloat(numStr));  console.log('Type of Number Before Conversion: ' + typeof numStr); console.log('Type of Number After Conversion: ' + typeof numInt); 

Lähtö
Type of Number Before Conversion: string Type of Number After Conversion: number 

Selitys

Here, parseFloat()> käytetään muuntamaan merkkijono numStr> liukulukunumeroon ennen hakemista Math.floor()> . Tämä varmistaa, että tulos on luku.

Lähestymistapa 5: Muunna merkkijono kokonaisluvuksi käyttämällä Bitwise-operaattoria

Käyttämällä bittikohtaisia ​​operaattoreita, kuten | 0 tai < < 0 voi myös suorittaa merkkijonon muunnoksen kokonaisluvuksi ytimekkäästi.

Syntaksi:

numStr | 0; // or numStr  < < 0; 

Esimerkki: Bitwise-operaattoria voidaan käyttää myös merkkijonon muuntamiseen luvuksi.

Javascript
let numStr = '101.45'; let numInt = numStr | 0; console.log('Type of Number Before Conversion: '   + typeof numStr);   console.log('Type of Number After Conversion: '   + typeof parseInt(numInt)); 

Lähtö
Type of Number Before Conversion: string Type of Number After Conversion: number 

Lähestymistapa 6: Muunna merkkijono kokonaisluvuksi BigInt() Constructorin avulla

BigInt()-konstruktorilla voidaan muuntaa merkkijono BigInt-kokonaisluvuksi. Tämä on erityisen hyödyllistä käsiteltäessä erittäin suuria kokonaislukuja, jotka ylittävät JavaScriptin turvallisten kokonaislukujen enimmäisrajan.

Esimerkki:

JavaScript
// Example of using BigInt() constructor to convert a string into a BigInt integer let numStr = '12345678901234567890'; let numBigInt = BigInt(numStr); console.log('Type of Number Before Conversion: ' + typeof numStr); console.log('Type of Number After Conversion: ' + typeof numBigInt); console.log(numBigInt); // Nikunj Sonigara 

Lähtö
Type of Number Before Conversion: string Type of Number After Conversion: bigint 12345678901234567890n 

Selitys

Koodi alustaa muuttujan numStr> merkkijonolla 101.45. Sitten se käyttää bittikohtaista OR-toimintoa ( |> ) muuntaaksesi implisiittisesti numStr> kokonaisluvuksi katkaisemalla sen desimaaliosan. Lopuksi se näyttää tyypin numInt> ennen ja jälkeen muuntamisen.

Virheiden käsittely muunnettaessa merkkijonoja kokonaisluvuiksi JavaScriptissä

Kun muunnat merkkijonoja kokonaisluvuiksi, on erittäin tärkeää käsitellä mahdollisia virheitä, jotta koodisi toimii oikein. Tässä on joitain yleisiä virheitä ja niiden käsittelyä:

  • Ei-numeeriset merkit: Jos merkkijono sisältää ei-numeerisia merkkejä, parseInt()> ja Number()> saattaa palata NaN> (Ei numero). Voit tarkistaa tämän käyttämällä isNaN()> ja käsitellä virheellisiä syötteitä sulavasti.
  • Etu- ja lopussa oleva välilyönti: Jotkin menetelmät voivat jättää huomiotta välilyönnit merkkijonon alussa tai lopussa. Käytä menetelmiä, kuten trim()> poistaaksesi välilyönnit ennen muuntamista.
  • Radix-ongelmat: Väärän kantaluvun määrittäminen parseInt()> voi johtaa odottamattomiin tuloksiin. Vahvista kantaluku kontekstin perusteella (esim. heksadesimaalimerkkijonoissa käytä kantalukua 16).
  • Yli- ja alivuoto: Erittäin suurten tai hyvin pienten lukujen muuntaminen voi johtaa yli- tai alivuotoon. Harkitse kirjastojen käyttöä, kuten bignumber.js> käsittelemään JavaScriptin alkuperäisen alueen ulkopuolella olevia lukuja.

Muunna merkkijono kokonaisluvuksi JavaScriptin käyttötapauksissa

1. JavaScript-ohjelma muuntaa päivämäärän numeroksi

JavaScript Päivämäärä objektia käytetään päivämäärän ja kellonajan hakemiseen. Se auttaa muotoilemaan päivämäärät. Voimme käyttää Uusi avainsana luodaksesi objektin päivämäärälle. Muuntaaksesi päivämäärän numeroksi käytämme getTime() menetelmä .

2. Kuinka muuntaa merkkijono kokonaisluvuksi käyttämättä parseInt()-funktiota JavaScriptissä?

Jos haluat muuntaa merkkijonon kokonaisluvuksi käyttämättä parseInt(), voimme käyttää seuraavaa:

  • Pakon käyttäminen
  • Käyttämällä Number()-funktio
  • Käyttämällä unary + operaattori
  • Käyttämällä Math floor() -menetelmä
  • Käyttämällä Math.ceil( ) -funktio

3. Kuinka muuntaa minkä tahansa kantajonon kokonaisluvuksi JavaScriptissä?

Voisimme käyttää JavaScriptin tarjoamaa menetelmää (tai funktiota), jota kutsutaan nimellä parseInt().

JavaScript tunnetaan parhaiten web-sivujen kehittämisestä, mutta sitä käytetään myös useissa muissa kuin selainympäristöissä. Voit oppia JavaScript alusta alkaen seuraamalla tätä JavaScript opetusohjelma ja JavaScript-esimerkkejä .