JavaScript Data Types

JavaScript, the backbone of modern web development, is a dynamic language that allows for flexible data type handling. This tutorial will delve into the world of JavaScript data types, providing you with a comprehensive understanding of both primitive and non-primitive data types.

JavaScript Data Types
JavaScript Data Types

Primitive Data Types


A string is a sequence of characters used to represent text. In JavaScript, strings can be created using single quotes ('), double quotes ("), or backticks (“`).

let name = 'John Doe';
let greeting = "Hello, World!";
let sentence = `My name is ${name}.`;


The Number data type represents both integers and floating-point numbers. In JavaScript, there are many operations for numbers, e.g., multiplication *, division /, addition +, subtraction -, and so on.

let x = 3.14; // A number with decimals
let y = 34; // An integer


A Boolean represents one of two values: true or false. It is typically used with conditional statements to determine the flow of a program.

let isReading = true; // Yes, I'm reading
let isSleeping = false; // No, I'm not sleeping


In JavaScript, null is not a “reference to a non-existing object” or a “null pointer” like in some other languages. It’s just a special value which represents “nothing”, “empty” or “value unknown”.

let person = null; // person is unknown or empty for now


A variable that has not been assigned a value is of type undefined.

let age;
console.log(age); // Outputs "undefined"


In JavaScript, the BigInt type was recently added to represent integers of arbitrary length. A BigInt is created by appending n to the end of an integer.

const bigNumber = 1234567890123456789012345678901234567890n;


Symbol is a unique and immutable data type that is often used as an identifier for object properties.

let id = Symbol('id');

Non-Primitive Data Types


An object is a complex data structure that allows you to store collections of data.

let student = {
  firstName: 'John',
  lastName: 'Doe',
  age: 20,


An array is a special variable, which can hold more than one value at a time.

let fruits = ['Apple', 'Banana', 'Mango'];


Functions are one of the fundamental building blocks in JavaScript. A function is a set of statements that performs a task or calculates a value.

function greet(name) {
  return `Hello, ${name}!`;


The Date object is used to work with dates and times.

let date = new Date();

Wrapping Up

Understanding data types in JavaScript is fundamental to being an effective JavaScript developer. They are the building blocks of any JavaScript application

Frequently Asked Questions (FAQ)

  • What is the difference between null and undefined in JavaScript?

    Null is an assignment value that means no value or no object. It is assigned, and it means nothing. On the other hand, undefined means a variable has been declared, but no value has been assigned a value.

  • What is the use of BigInt in JavaScript?

    BigInt is a built-in object that provides a way to represent whole numbers larger than 2^53 – 1, which is the largest number JavaScript can reliably represent with the Number primitive.

  • What is a Symbol in JavaScript?

    Symbol is a primitive data type whose instances are unique and immutable. Symbols are often used to identify object properties.

  • What is the typeof operator in JavaScript?

    The typeof operator returns a string indicating the type of the unevaluated operand.

  • Can an object be used as a key in JavaScript?

    No, only string and symbol keys are allowed in JavaScript objects.

  • What is the difference between primitive and non-primitive data types?

    Primitive data types include String, Number, Boolean, Null, Undefined, BigInt, and Symbol. They hold a value that is directly assigned to them. Non-primitive data types include Object, Array, Function, and Date. They are used to store multiple values and can be modified.

  • How do I check if a variable is undefined in JavaScript?

    You can use the typeof operator or compare the variable with undefined.

  • What is the difference between == and === in JavaScript?

    == is the equality operator, which performs type coercion if you compare two different data types. === is the identity operator, which doesn’t perform type coercion.

  • What is type coercion in JavaScript?

    Type coercion is the process of converting value from one type to another (such as string to number, object to boolean, and so on).

  • What is the difference between a string and a String object in JavaScript?

    A string is a primitive data type, while a String object is a wrapper around the string primitive data type.

  1. Introduction to JavaScript
  2. Getting Started
  3. JavaScript Syntax: A Fun, Free and Easy Tutorial
  4. JavaScript Comments
  5. JavaScript Variables
  6. JavaScript var Explained
  7. JavaScript Let
  8. JavaScript const
  9. JavaScript Interactions: alert, prompt, and confirm

Remember, practice makes perfect. The more you use these data types and understand how they work, the better you’ll get at JavaScript. Happy coding!

Scroll to Top