Pretvorbe tipov JavaScript (s primeri)

V tej vadnici boste s pomočjo primerov izvedeli več o pretvorbah tipov v JavaScript.

Postopek pretvorbe enega podatkovnega tipa v drugega se imenuje pretvorba tipa. V JavaScript obstajata dve vrsti pretvorbe vrst.

  • Implicitna pretvorba
  • Izrecna pretvorba

Implicitna pretvorba JavaScript

V nekaterih primerih JavaScript samodejno pretvori en podatkovni tip v drugega (v pravi tip). To je znano kot implicitna pretvorba.

Primer 1: implicitna pretvorba v niz

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

Opomba : Ko je v niz dodano število, JavaScript pretvori število v niz pred združitvijo.

Primer 2: Implicitna pretvorba v številko

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

Primer 3: Numerenčni rezultati nizov za 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

Primer 4: Implicitna logična pretvorba v številko

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

Opomba: JavaScript šteje 0 kot falsein vsa različna od nič števila kot true. Če truese pretvori v število, je rezultat vedno 1.

Primer 5: ničelna pretvorba v številko

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

Primer 6: nedefinirano se uporablja s številko, logično ali ničelno vrednostjo

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

Izrecna pretvorba JavaScript

Prav tako lahko pretvorite en podatkovni tip v drugega glede na vaše potrebe. Pretvorba tipa, ki jo izvedete ročno, je znana kot eksplicitna pretvorba tipa.

V JavaScript se pretvorbe eksplicitnih tipov izvajajo z vgrajenimi metodami.

Tu je nekaj pogostih metod eksplicitnih pretvorb.

1. Pretvori v številko eksplicitno

Številčne nize in logične vrednosti lahko pretvorite v številke Number(). Na primer

 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

V JavaScript prazni nizi in nullvrednosti vrnejo 0 . Na primer

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

Če je niz neveljavna številka, bo rezultat NaN. Na primer

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

Opomba : lahko ustvarite tudi številke iz nizov uporabo parseInt(), parseFloat()unarnega operaterja +in Math.floor(). Na primer

 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. Pretvori v niz eksplicitno

Če želite pretvoriti druge vrste podatkov v nize, lahko uporabite String()ali toString(). Na primer

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

Opomba : String()vzame nullin undefinedin jih pretvori v niz. Vendar pa toString()daje napako, konull are passed.

3. Pretvori v logično eksplicitno

Če želite druge vrste podatkov pretvoriti v logično vrednost, lahko uporabite Boolean().

V JavaScript, undefined, null, 0, NaN, ''pretvori v false. Na primer

  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

Vse druge vrednosti dajo true. Na primer

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

Tabela za pretvorbo vrst JavaScript

Tabela prikazuje pretvorbo različnih vrednosti v niz, število in logično vrednost v 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

O pretvorbi predmetov in nizov v druge vrste podatkov boste izvedeli v kasnejših vajah.

Obiščite te primere, če želite izvedeti več:

  • JavaScript datumi za številke
  • JavaScript datumi nizov

Zanimive Članki...