De JavaScript typ av operatör returnerar datatypen för en variabel eller ett uttryck. Det är en unär operator som placeras före dess operand och returnerar en sträng som anger datatypen, till exempel nummer, sträng, boolean, objekt, odefinierad, funktion eller symbol. Det används ofta för att dynamiskt bestämma vilken typ av data som bearbetas, vilket underlättar villkorlig logik och typkontroll i JavaScript-program.
Syntax:
typeof operand // OR typeof (operand)>
Primitiva datatyper
Primitiva datatyper i JavaScript är grundläggande datatyper som representerar enskilda värden. De inkluderar:
| Data typ | Beskrivning |
|---|---|
| siffra | Representerar numeriska värden som heltal och flyttal. |
| Sträng | Representerar textdata omsluten av enkla citattecken () eller dubbla citattecken (). |
| Boolean | Representerar sanna eller falska värden. |
| Odefinierad | Representerar en variabel som har deklarerats men inte har tilldelats något värde. |
| Null | Representerar den avsiktliga frånvaron av något objektvärde. |
| Symbol | Representerar en unik och oföränderlig datatyp som används som nyckeln till ett objekts egenskap. |
| BigInt | Representerar stora heltal bortom gränsen för nummertypen. |
Exempel 1: Nedan exempel visar resultaten av typ av operator för premitiva datatyper.
Javascript // Define variables with different primitive data types const num = 10; const str = 'Hello'; const bool = true; const undef = undefined; const nul = null; const sym = Symbol('symbol'); const bigInt = 9007199254740991n; // Use typeof operator to determine the data type console.log(typeof num); // Output: 'number' console.log(typeof str); // Output: 'string' console.log(typeof bool); // Output: 'boolean' console.log(typeof undef); // Output: 'undefined' console.log(typeof nul); // Output: 'object' (typeof null is an oddity, // it returns 'object') console.log(typeof sym); // Output: 'symbol' console.log(typeof bigInt);// Output: 'bigint'> Produktion
number string boolean undefined object symbol bigint>
Exempel 2: Det här exemplet använder '===' (operator för strikt likhetsjämförelse) som jämför värde och typ båda och sedan returnerar sant eller falskt.
javascript //Number console.log(typeof 25 === 'number'); console.log(typeof 3.14 === 'number'); console.log(typeof (69) === 'number'); // log base 10 console.log(typeof Math.LN10 === 'number'); console.log(typeof Infinity === 'number'); // Despite being 'Not-A-Number' console.log(typeof NaN === 'number'); // Wrapping in Number() function console.log(typeof Number('100') === 'number');> Förklaring: I den första console.log() börjar js kompilera från vänster till höger och den beräknar först typen av 25 som är 'number', och jämför den sedan med 'number' och returnerar sedan till sist sant eller false i enlighet med detta.
Produktion
true true true true true true true>
Exempel 3: I det här exemplet jämförs funktionsdatatypen med operatortypen typeof.
javascript // function console.log(typeof function () { } === 'function'); //classes too are objects console.log(typeof class C { } === 'function'); console.log(typeof Math.sin === 'function');> Produktion
true true true>