În acest tutorial, veți afla despre conversiile de tipuri în JavaScript cu ajutorul exemplelor.
Procesul de conversie a unui tip de date în alt tip de date se numește conversie de tip. Există două tipuri de conversii de tip în JavaScript.
- Conversie implicită
- Conversie explicită
Conversie implicită JavaScript
În anumite situații, JavaScript convertește automat un tip de date la altul (la tipul potrivit). Aceasta este cunoscută sub numele de conversie implicită.
Exemplul 1: conversie implicită în șir
// 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"
Notă : Când un număr este adăugat la un șir, JavaScript convertește numărul într-un șir înainte de concatenare.
Exemplul 2: conversie implicită în număr
// 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
Exemplul 3: Rezultate șiruri nenumerice la 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
Exemplul 4: conversie booleană implicită în număr
// 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
Notă: JavaScript consideră 0 ca false
și toate numărul de non-zero true
. Și, dacă true
este convertit într-un număr, rezultatul este întotdeauna 1.
Exemplul 5: conversie nulă la număr
// null is 0 when used with number let result; result = 4 + null; console.log(result); // 4 result = 4 - null; console.log(result); // 4
Exemplul 6: nedefinit utilizat cu număr, boolean sau nul
// 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
Conversie JavaScript explicită
De asemenea, puteți converti un tip de date în altul în funcție de nevoile dvs. Conversia de tip pe care o faceți manual este cunoscută sub numele de conversie de tip explicită.
În JavaScript, conversiile de tip explicit se fac folosind metode încorporate.
Iată câteva metode comune de conversii explicite.
1. Convertiți în număr în mod explicit
Pentru a converti șiruri numerice și valori booleene în numere, puteți utiliza Number()
. De exemplu,
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
În JavaScript, șirurile și null
valorile goale returnează 0 . De exemplu,
let result; result = Number(null); console.log(result); // 0 let result = Number(' ') console.log(result); // 0
Dacă un șir este un număr nevalid, rezultatul va fi NaN
. De exemplu,
let result; result = Number('hello'); console.log(result); // NaN result = Number(undefined); console.log(result); // NaN result = Number(NaN); console.log(result); // NaN
Notă : De asemenea, puteți genera numere din șiruri folosind parseInt()
,, parseFloat()
operator unar +
și Math.floor()
. De exemplu,
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. Convertiți în șir explicit
Pentru a converti alte tipuri de date pentru siruri de caractere, puteți folosi String()
sau toString()
. De exemplu,
//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"
Notă : le String()
ia null
și undefined
le convertește în șir. Cu toate acestea, toString()
dă eroare cândnull are passed.
3. Convertiți în Boolean în mod explicit
Pentru a converti alte tipuri de date într-un boolean, puteți utiliza Boolean().
În JavaScript, undefined
, null
, 0
, NaN
, ''
convertiți la false
. De exemplu,
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
Toate celelalte valori dau true
. De exemplu,
result = Boolean(324); console.log(result); // true result = Boolean('hello'); console.log(result); // true result = Boolean(' '); console.log(result); // true
Tabel de conversie tip JavaScript
Tabelul arată conversia diferitelor valori în șir, număr și boolean în JavaScript.
Value | String Conversion | Number Conversion | Boolean Conversion |
1 | "1" | 1 |
|
0 | "0" | 0 |
|
"1" | "1" | 1 |
|
"0" | "0" | 0 |
|
"ten" | "ten" |
|
|
| "true" | 1 |
|
| "false" | 0 |
|
| "null" | 0 |
|
| "undefined" |
|
|
'' | "" | 0 |
|
' ' | " " | 0 |
|
Veți afla despre conversia obiectelor și a matricelor la alte tipuri de date în tutoriale ulterioare.
Vizitați aceste exemple pentru a afla mai multe:
- JavaScript datează la numere
- JavaScript datează pe șiruri