logo

JavaScript-type operator

De JavaScript-type operator retourneert het gegevenstype van een variabele of expressie. Het is een unaire operator die vóór de operand wordt geplaatst en retourneert een string die het gegevenstype aangeeft, zoals getal, string, booleaanse waarde, object, ongedefinieerd, functie of symbool. Het wordt vaak gebruikt om dynamisch te bepalen welk type gegevens wordt verwerkt, waardoor voorwaardelijke logica en typecontrole in JavaScript-programma's wordt vergemakkelijkt.

Syntaxis:



typeof operand // OR typeof (operand)>

Primitieve gegevenstypen

Primitieve gegevenstypen in JavaScript zijn basisgegevenstypen die afzonderlijke waarden vertegenwoordigen. Ze bevatten:

Data typeBeschrijving
NummerVertegenwoordigt numerieke waarden zoals gehele getallen en getallen met drijvende komma.
SnaarVertegenwoordigt tekstuele gegevens tussen enkele aanhalingstekens () of dubbele aanhalingstekens ().
BooleaansVertegenwoordigt waar of onwaar waarden.
OngedefinieerdVertegenwoordigt een variabele die is gedeclareerd maar waaraan geen waarde is toegewezen.
NulVertegenwoordigt de opzettelijke afwezigheid van een objectwaarde.
SymboolVertegenwoordigt een uniek en onveranderlijk gegevenstype dat wordt gebruikt als de sleutel van de eigenschap van een object.
GrootIntVertegenwoordigt grote gehele getallen buiten de limiet van het type Getal.

Voorbeeld 1: Het onderstaande voorbeeld toont de resultaten van de operator typeof voor premitieve gegevenstypen.

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

Uitvoer
number string boolean undefined object symbol bigint>

Voorbeeld 2: In dit voorbeeld wordt ‘===’ (operator voor strikte gelijkheidsvergelijking) gebruikt, waarbij de waarde en het type beide worden vergeleken en vervolgens waar of onwaar wordt geretourneerd.



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');>

Uitleg: In de eerste console.log() begint de js met het compileren van links naar rechts en berekent eerst het type 25 dat 'getal' is, en vergelijkt het vervolgens met 'getal' en retourneert uiteindelijk dienovereenkomstig waar of onwaar.


Uitvoer
true true true true true true true>

Voorbeeld 3: In dit voorbeeld wordt het functiegegevenstype vergeleken met behulp van de operator typeof.

javascript
// function console.log(typeof function () { } === 'function'); //classes too are objects console.log(typeof class C { } === 'function'); console.log(typeof Math.sin === 'function');>

Uitvoer
true true true>