Skip to content
Related Articles

Related Articles

JavaScript typeof operator
  • Last Updated : 09 Sep, 2020

Below is the example of the typeof operator.

  • Example:




    <script>
    // "string"
    document.write(typeof 'mukul'+"<br>"
      
    // "number"
    document.write(typeof 25 +"<br>"
      
    // "undefined"
    document.write(typeof variable)
    </script>
  • Output:
    string
    number
    undefined

In JavaScript, the typeof operator returns the data type of its operand in the form of a string. The operand can be any object, function, or variable.

Syntax:

typeof operand

OR

typeof (operand)

Note: Operand is an expression representing the object or primitive whose type is to be returned.



The possible types that exists in javascript are:

  • undefined
  • Object
  • boolean
  • number
  • string
  • symbol
  • function

Example:




<script>
// "string"
document.write(typeof 'mukul'+"<br>"
  
// "number"
document.write(typeof 25 +"<br>"
  
// "undefined"
document.write(typeof variable)
</script>

Output:

string
number
undefined

Let’s cover all the types one by one dedicating a single code section for each code.

Example: Typeof Number, in this sample, we used ‘===’ (strict equality comparison operator) which compare value and type both and then return true or false. For example- consider the first console.log(), the js starts compiling from left to right and it first calculates the type of 25 which is ‘number’ and then compares it with ‘number’ and then finally returns true or false accordingly.




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

Output:

Fun fact NaN which stands for not-a-number has a type of “number”.

Example: Typeof string






<script> 
  // string
  console.log(typeof '' === 'string');
  console.log(typeof 'bla' === 'string');
  
  // ES6 template literal
  console.log(typeof `template literal` === 'string');  
  console.log(typeof '1' === 'string');
  console.log(typeof (typeof 1) === 'string');
  
  // Wrapping inside String() function
  console.log(typeof String(1) === 'string');
</script> 

Output:

Examople: Typeof boolean




<script> 
  // Boolean
  console.log(typeof true === 'boolean');
  console.log(typeof false === 'boolean');
  
  // Two calls of the ! (logical NOT) operator 
  // are equivalent to Boolean()
  console.log(typeof !!(1) === 'boolean'); 
</script> 

Output:

Example: Typeof undefined




<script> 
  // Undefined
  console.log(typeof undefined === 'undefined');
  
  // Declared but undefined variable
  console.log(typeof variable === 'undefined'); 
</script> 

Output:

Example: Typeof symbol




<script> 
  // Symbol
  console.log(typeof Symbol() === 'symbol');
  console.log(typeof Symbol('party') === 'symbol');
  console.log(typeof Symbol.iterator === 'symbol');
</script> 

Output:

Example: Typeof object




<script> 
  // Object
  console.log(typeof {b: 1} === 'object');
  console.log(typeof [1, 2, 9] === 'object');
  console.log(typeof new Date() === 'object');
</script> 

Output:

Example: Typeof function




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

Output:

My Personal Notes arrow_drop_up
Recommended Articles
Page :