Conversions de type JavaScript (avec exemples)

Dans ce didacticiel, vous découvrirez les conversions de type en JavaScript à l'aide d'exemples.

Le processus de conversion d'un type de données en un autre type de données est appelé conversion de type. Il existe deux types de conversion de type en JavaScript.

  • Conversion implicite
  • Conversion explicite

Conversion implicite JavaScript

Dans certaines situations, JavaScript convertit automatiquement un type de données en un autre (vers le bon type). C'est ce qu'on appelle la conversion implicite.

Exemple 1: conversion implicite en chaîne

 // numeric string used with + gives string type let result; result = '3' + 2; console.log(result) // "32" result = '3' + true; console.log(result); // "3true" result = '3' + undefined; console.log(result); // "3undefined" result = '3' + null; console.log(result); // "3null"

Remarque : Lorsqu'un nombre est ajouté à une chaîne, JavaScript convertit le nombre en chaîne avant la concaténation.

Exemple 2: Conversion implicite en nombre

 // numeric string used with - , / , * results number type let result; result = '4' - '2'; console.log(result); // 2 result = '4' - 2; console.log(result); // 2 result = '4' * 2; console.log(result); // 8 result = '4' / 2; console.log(result); // 2

Exemple 3: Résultats de chaîne non numériques vers NaN

 // non-numeric string used with +, - , / , * results to NaN let result; result = 'hello' - 'world'; console.log(result); // NaN result = '4' - 'hello'; console.log(result); // NaN

Exemple 4: Conversion booléenne implicite en nombre

 // if boolean is used, true is 1, false is 0 let result; result = '4' - true; console.log(result); // 3 result = 4 + true; console.log(result); // 5 result = 4 + false; console.log(result); // 4

Remarque: JavaScript considère 0 comme falseet tout nombre non nul comme true. Et, si trueest converti en nombre, le résultat est toujours 1.

Exemple 5: conversion nulle en nombre

 // null is 0 when used with number let result; result = 4 + null; console.log(result); // 4 result = 4 - null; console.log(result); // 4

Exemple 6: undefined utilisé avec number, boolean ou null

 // Arithmetic operation of undefined with number, boolean or null gives NaN let result; result = 4 + undefined; console.log(result); // NaN result = 4 - undefined; console.log(result); // NaN result = true + undefined; console.log(result); // NaN result = null + undefined; console.log(result); // NaN

Conversion explicite JavaScript

Vous pouvez également convertir un type de données en un autre selon vos besoins. La conversion de type que vous effectuez manuellement est appelée conversion de type explicite.

En JavaScript, les conversions de types explicites sont effectuées à l'aide de méthodes intégrées.

Voici quelques méthodes courantes de conversions explicites.

1. Convertir explicitement en nombre

Pour convertir des chaînes numériques et des valeurs booléennes en nombres, vous pouvez utiliser Number(). Par exemple,

 let result; // string to number result = Number('324'); console.log(result); // 324 result = Number('324e-1') console.log(result); // 32.4 // boolean to number result = Number(true); console.log(result); // 1 result = Number(false); console.log(result); // 0

En JavaScript, les chaînes vides et les nullvaleurs renvoient 0 . Par exemple,

 let result; result = Number(null); console.log(result); // 0 let result = Number(' ') console.log(result); // 0

Si une chaîne est un nombre non valide, le résultat sera NaN. Par exemple,

 let result; result = Number('hello'); console.log(result); // NaN result = Number(undefined); console.log(result); // NaN result = Number(NaN); console.log(result); // NaN

Remarque : Vous pouvez également générer des nombres de chaînes en utilisant parseInt(), parseFloat(), opérateur unaire +et Math.floor(). Par exemple,

 let result; result = parseInt('20.01'); console.log(result); // 20 result = parseFloat('20.01'); console.log(result); // 20.01 result = +'20.01'; console.log(result); // 20.01 result = Math.floor('20.01'); console.log(result); // 20

2. Convertir explicitement en chaîne

Pour convertir d'autres types de données en chaînes, vous pouvez utiliser soit String()ou toString(). Par exemple,

 //number to string let result; result = String(324); console.log(result); // "324" result = String(2 + 4); console.log(result); // "6" //other data types to string result = String(null); console.log(result); // "null" result = String(undefined); console.log(result); // "undefined" result = String(NaN); console.log(result); // "NaN" result = String(true); console.log(result); // "true" result = String(false); console.log(result); // "false" // using toString() result = (324).toString(); console.log(result); // "324" result = true.toString(); console.log(result); // "true"

Remarque : String()prend nullet undefinedet les convertit en chaîne. Cependant, toString()donne une erreur lorsquenull are passed.

3. Convertir explicitement en booléen

Pour convertir d'autres types de données en booléen, vous pouvez utiliser Boolean().

En JavaScript, undefined, null, 0, NaN, ''convertis à false. Par exemple,

  let result; result = Boolean(''); console.log(result); // false result = Boolean(0); console.log(result); // false result = Boolean(undefined); console.log(result); // false result = Boolean(null); console.log(result); // false result = Boolean(NaN); console.log(result); // false

Toutes les autres valeurs donnent true. Par exemple,

  result = Boolean(324); console.log(result); // true result = Boolean('hello'); console.log(result); // true result = Boolean(' '); console.log(result); // true

Table de conversion de type JavaScript

Le tableau montre la conversion de différentes valeurs en chaîne, nombre et booléen en JavaScript.

Value String Conversion Number Conversion Boolean Conversion
1 "1" 1 true
0 "0" 0 false
"1" "1" 1 true
"0" "0" 0 true
"ten" "ten" NaN true
true "true" 1 true
false "false" 0 false
null "null" 0 false
undefined "undefined" NaN false
'' "" 0 false
' ' " " 0 true

Vous découvrirez la conversion d'objets et de tableaux en d'autres types de données dans des didacticiels ultérieurs.

Consultez ces exemples pour en savoir plus:

  • Dates JavaScript en nombres
  • Dates JavaScript en chaînes

Articles intéressants...