logo

Converteix una cadena en un enter en JavaScript

A JavaScript, és bastant comú trobar-se amb un número atrapat dins d'una cadena. Això pot passar quan esteu tractant amb l'entrada de l'usuari, llegint dades d'un fitxer o treballeu amb una API de tercers. Però JavaScript ofereix diversos mètodes útils per alliberar aquest nombre i convertir-lo en un nombre enter. Això és molt útil quan necessiteu fer algunes matemàtiques o comparacions amb aquests números.

Taula de contingut

Enfocament 1: Converteix la cadena en un nombre enter mitjançant el mètode parseInt().

El mètode parseInt(). accepta la cadena i el paràmetre radix i el converteix en un nombre enter.



Sintaxi:

parseInt( Value, radix )>

Exemple: En aquest cas, utilitzem el mètode JavaScript parseInt() per convertir una cadena en un nombre enter.

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

Sortida
Type of a before conversion: string Type of a after conversion: number>

Explicació

El codi inicialitza una variablea>amb la cadena 100, imprimeix el seu tipus abans i després de convertir-lo en un enter utilitzantparseInt()>

Enfocament 2: Converteix la cadena en un enter mitjançant el mètode Number().

El mètode number(). s'utilitza per convertir el tipus de dades primitiu en un nombre, si no és convertible retorna NAN.

ets empalmament

Sintaxi:

Number( value )>

Exemple: Aquí, estem utilitzant el mètode JavaScript Number() per convertir la cadena en un enter.

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

Sortida
Type of name and age before conversion: string string Type of name and age after conversion: number number>

Explicació

El codi inicialitza variablesage>iname>amb valors de cadena que representen l'edat i un nom respectivament. A continuació, mostra els seus tipus abans i després de la conversió a númerosNumber()>.

Enfocament 3: Converteix la cadena en un nombre enter mitjançant l'operador unari

El Operador unari (+) s'utilitza per convertir una cadena, booleà i no cadena en un nombre.

Sintaxi:

+operand;>

Exemple:

El operador unari per convertir una cadena en un nombre.

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

Sortida
Type of name, age and number before conversion: string string string Type of name, age and number after conversion: number number number>

Explicació

El codi inicialitza variablesage>,name>, inumber>amb valors de cadena que representen l'edat, un nom i un nombre constant respectivament. A continuació, mostra els seus tipus abans i després de la conversió a números mitjançant l'operador unari més+>.

Enfocament 4: Converteix la cadena en un nombre enter mitjançant el mètode Math.floor().

El Mètode Math.floor(). s'utilitza per convertir una cadena en nombre.

Sintaxi:

quadre d'alerta de javascript
Math.floor( numStr )>

Exemple:

El mètode Math.floor() s'utilitza per convertir una cadena en un nombre.

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

Sortida
Type of Number Before Conversion: string Type of Number After Conversion: number>

Explicació

Here, parseFloat()>s'utilitza per convertir la cadenanumStr>a un nombre de coma flotant abans de sol·licitar-loMath.floor()>. Això assegura que el resultat és un número.

Enfocament 5: Converteix la cadena en un nombre enter mitjançant l'operador per bits

Utilitzant operadors bit a bit com | 0 o << 0 també pot realitzar una conversió de cadena a nombre enter de manera concisa.

Sintaxi:

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

Exemple: L'operador bit a bit també es pot utilitzar per convertir una cadena en un nombre.

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

Sortida
Type of Number Before Conversion: string Type of Number After Conversion: number>

Enfocament 6: Converteix String en un nombre enter mitjançant el constructor BigInt().

El constructor BigInt() es pot utilitzar per convertir una cadena en un nombre enter BigInt. Això és especialment útil quan es tracta d'enters molt grans que superen el límit màxim segur d'enters en JavaScript.

Exemple:

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>

Sortida
Type of Number Before Conversion: string Type of Number After Conversion: bigint 12345678901234567890n>

Explicació

El codi inicialitza una variablenumStr>amb la cadena 101,45. A continuació, utilitza una operació OR per bits (|>) convertir implícitamentnumStr>a un nombre enter, truncant la seva part decimal. Finalment, mostra el tipus denumInt>abans i després de la conversió.

Gestió d'errors en la conversió de cadenes a nombres enters en JavaScript

Quan es converteixen cadenes en nombres enters, és crucial gestionar possibles errors per garantir que el codi funcioni correctament. Aquests són alguns errors comuns i com gestionar-los:

  • Caràcters no numèrics: Si la cadena conté caràcters no numèrics,parseInt()>iNumber()>podria tornarNaN>(No és un número). Podeu comprovar-ho fent servir isNaN()> i gestionar amb gràcia les entrades no vàlides.
  • Espais en blanc inicials i finals: Alguns mètodes poden ignorar els espais en blanc al principi o al final de la cadena. Utilitzeu mètodes comtrim()>per eliminar els espais en blanc abans de la conversió.
  • Problemes de radix: Especificant la base incorrectaparseInt()>pot donar lloc a resultats inesperats. Valideu la base en funció del context (p. ex., per a cadenes hexadecimals, utilitzeu la base 16).
  • Desbordament i desbordament inferior: La conversió de nombres molt grans o molt petits pot provocar un desbordament o un desbordament inferior. Penseu en l'ús de biblioteques combignumber.js>per gestionar números fora de l'interval natiu de JavaScript.

Converteix una cadena en un nombre enter en casos d'ús de JavaScript

1. Programa JavaScript per convertir la data en nombre

El JavaScript Data objecte s'utilitza per obtenir dates i hores. Ajuda a donar format a les dates. Podem utilitzar el nou paraula clau per crear un objecte per a Date. Per convertir una data en un nombre, fem servir el getTime() mètode .

2. Com convertir una cadena en un nombre enter sense utilitzar la funció parseInt() a JavaScript?

Per convertir una cadena en un enter sense utilitzar parseInt(), podem utilitzar el següent:

  • Utilitzant la coacció
  • Utilitzant el Funció Number().
  • Utilitzant el unari + operador
  • Utilitzant Math floor() Mètode
  • Utilitzant Funció Math.ceil().

3. Com convertir una cadena de qualsevol base en un enter en JavaScript?

Podríem estar utilitzant un mètode (o una funció) proporcionat per JavaScript anomenat com parseInt().

JavaScript és més conegut pel desenvolupament de pàgines web, però també s'utilitza en una varietat d'entorns que no són de navegador. Pots aprendre JavaScript des de la base seguint això Tutorial de JavaScript i Exemples de JavaScript .