JavaScript-typeconversies (met voorbeelden)

In deze zelfstudie leert u aan de hand van voorbeelden over typeconversies in JavaScript.

Het proces van het converteren van een gegevenstype naar een ander gegevenstype wordt typeconversie genoemd. Er zijn twee soorten typeconversie in JavaScript.

  • Impliciete conversie
  • Expliciete conversie

JavaScript impliciete conversie

In bepaalde situaties converteert JavaScript automatisch het ene gegevenstype naar het andere (naar het juiste type). Dit staat bekend als impliciete conversie.

Voorbeeld 1: impliciete conversie naar tekenreeks

 // 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"

Opmerking : wanneer een getal aan een tekenreeks wordt toegevoegd, converteert JavaScript het getal naar een tekenreeks voordat het wordt samengevoegd.

Voorbeeld 2: impliciete conversie naar nummer

 // 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

Voorbeeld 3: niet-numerieke tekenreeksresultaten naar 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

Voorbeeld 4: impliciete Booleaanse conversie naar getal

 // 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

Opmerking: JavaScript beschouwt 0 als falseen alle niet-nulgetallen als true. En als het truewordt geconverteerd naar een getal, is het resultaat altijd 1.

Voorbeeld 5: null-conversie naar nummer

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

Voorbeeld 6: ongedefinieerd gebruikt met getal, boolean of 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

JavaScript expliciete conversie

U kunt ook het ene gegevenstype naar het andere converteren volgens uw behoeften. De typeconversie die u handmatig uitvoert, staat bekend als expliciete typeconversie.

In JavaScript worden expliciete typeconversies uitgevoerd met behulp van ingebouwde methoden.

Hier zijn enkele veelgebruikte methoden voor expliciete conversies.

1. Converteer expliciet naar getal

Om numerieke tekenreeksen en booleaanse waarden in getallen om te zetten, kunt u Number(). Bijvoorbeeld,

 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

In JavaScript nullretourneren lege tekenreeksen en waarden 0 . Bijvoorbeeld,

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

Als een string een ongeldig getal is, is het resultaat NaN. Bijvoorbeeld,

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

Opmerking : U kunt ook het genereren van nummers uit strings met behulp van parseInt(), parseFloat(), unaire operator +en Math.floor(). Bijvoorbeeld,

 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. Converteer expliciet naar tekenreeks

Om andere gegevenstypen naar strings te converteren, kunt u String()of gebruiken toString(). Bijvoorbeeld,

 //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"

Opmerking : String()neemt nullen undefineden converteert ze naar een string. Echter, toString()geeft fout wanneernull are passed.

3. Converteer expliciet naar Boolean

Om andere gegevenstypen naar een booleaanse waarde te converteren, kunt u Boolean().

In JavaScript, undefined, null, 0, NaN, ''bekeerlingen false. Bijvoorbeeld,

  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

Alle andere waarden geven true. Bijvoorbeeld,

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

Conversietabel voor JavaScript-typen

De tabel toont de conversie van verschillende waarden naar String, Number en Boolean in 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

In latere tutorials leer je over de conversie van objecten en arrays naar andere datatypes.

Bezoek deze voorbeelden voor meer informatie:

  • JavaScript datums in cijfers
  • JavaScript dateert naar strings

Interessante artikelen...