Skip to content

Javascript Data Types

JavaScript supports various data types, which can be broadly categorized into primitive types and object types. Understanding these data types is essential for writing effective JavaScript code. Here’s a detailed look at each data type:

Primitive Data Types

Primitive data types are the most basic types of data. There are seven primitive data types in JavaScript:

  1. Number
  2. String
  3. Boolean
  4. Null
  5. Undefined
  6. Symbol
  7. BigInt

1. Number

The Number type represents both integer and floating-point numbers. JavaScript uses the IEEE 754 standard for representing numbers, which means it can handle numbers in the range of approximately −253−253 to 253253.

let intNumber = 42;         // Integer

let floatNumber = 3.14;     // Floating-point number

let exponential = 1.5e3;    // Exponential notation, equivalent to 1.5 * 10^3

let negativeNumber = -7;    // Negative number

JavaScript also provides some special numeric values:

  • Infinity: Represents positive infinity.
  • -Infinity: Represents negative infinity.
  • NaN: Represents a value that is “Not-a-Number”.

console.log(1 / 0);          // Infinity

console.log(-1 / 0);         // -Infinity

console.log(“a” / 2);        // NaN

2. String

The String type is used to represent text. Strings are sequences of characters enclosed in single quotes (), double quotes (), or backticks (`).

let singleQuoteString = ‘Hello, World!’;

let doubleQuoteString = “Hello, World!”;

let templateString = `Hello, ${name}!`;  // Template literal with embedded expression

Strings can be concatenated using the + operator or the += operator.

let greeting = “Hello, ” + “World!”;

let name = “Alice”;

greeting += ” How are you, ” + name + “?”;

3. Boolean

The Boolean type has only two possible values: true and false. It is often used in conditional statements.

let isTrue = true;

let isFalse = false;

let comparison = 5 > 3;  // true

4. Null

The null type represents the intentional absence of any object value. It is one of JavaScript’s primitive values.

let emptyValue = null;

5. Undefined

The undefined type indicates that a variable has not been assigned a value. It is the default value for variables that have just been declared but not initialized.

let uninitialized;

console.log(uninitialized);  // undefined

6. Symbol

The Symbol type is used to create unique identifiers for objects. Symbols are guaranteed to be unique, even if they have the same description.

let sym1 = Symbol();

let sym2 = Symbol(‘description’);

let sym3 = Symbol(‘description’);

console.log(sym2 === sym3);  // false

7. BigInt

The BigInt type is used to represent integers with arbitrary precision. It is useful for working with very large integers that exceed the safe integer limit for the Number type.

let bigInt = 1234567890123456789012345678901234567890n;

let anotherBigInt = BigInt(“1234567890123456789012345678901234567890”);

Object Data Types

Object data types are complex data structures that can hold multiple values and more complex entities. The primary object data types in JavaScript include:

  1. Object
  2. Array
  3. Function
  4. Date
  5. RegExp
  6. Error

1. Object

The Object type is the most basic and common data structure in JavaScript. Objects are collections of key-value pairs where the keys are strings (or Symbols) and the values can be of any type.

let person = {

    firstName: “John”,

    lastName: “Doe”,

    age: 30,

    isEmployed: true,

    greet: function() {

        console.log(“Hello!”);

    }

};

console.log(person.firstName);  // Accessing a property

person.greet();                 // Calling a method

2. Array

The Array type is used to store ordered collections of values. Arrays are indexed starting from zero.

let numbers = [1, 2, 3, 4, 5];

let mixedArray = [1, “hello”, true, null, undefined];

console.log(numbers[0]);  // Accessing the first element

numbers.push(6);          // Adding an element to the end

3. Function

The Function type is used to define functions, which are reusable blocks of code that can be executed when called.

function add(a, b) {

    return a + b;

}

let sum = add(5, 3);  // Calling the function

console.log(sum);     // 8

Functions can also be assigned to variables or properties of objects.

let greet = function(name) {

    return `Hello, ${name}!`;

};

console.log(greet(“Alice”));  // Hello, Alice!

4. Date

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

let now = new Date();

console.log(now);  // Current date and time

let specificDate = new Date(‘2020-01-01’);

console.log(specificDate);  // January 1, 2020

5. RegExp

The RegExp type is used for matching text with patterns using regular expressions.

let pattern = /hello/;

let str = “hello world”;

let result = pattern.test(str);  // true

let regex = new RegExp(‘hello’);

result = regex.test(str);  // true

6. Error

The Error type represents an error that occurs during the execution of a script. Errors can be thrown using the throw statement and caught using try…catch.

try {

    throw new Error(“Something went wrong!”);

} catch (e) {

    console.log(e.message);  // Something went wrong!

}

Summary

JavaScript supports a variety of data types, each suited for different purposes. Understanding these data types is crucial for effective programming and enables developers to handle data appropriately in their applications. Here’s a quick recap:

  • Primitive Data Types: Number, String, Boolean, Null, Undefined, Symbol, BigInt.
  • Object Data Types: Object, Array, Function, Date, RegExp, Error.

By leveraging these data types appropriately, you can write robust and efficient JavaScript code.