Your Page Title
🔍

    ES6 Destructuring

    ES6 (ECMAScript 2015) introduced many powerful features in JavaScript, and one of the most useful is destructuring. It allows you to unpack values from arrays or properties from objects into distinct variables in a very clean and readable way.

    Let’s understand it with simple examples.


    Destructuring Arrays

    Instead of accessing array elements one by one, destructuring lets you extract them in a single line.

    Old Way:

    const colors = ['red', 'green', 'blue'];
    const first = colors[0];
    const second = colors[1];

    With Destructuring:

    const [first, second, third] = ['red', 'green', 'blue'];
    console.log(first); // red
    console.log(second); // green

    You can also skip items:

    const [,, third] = ['red', 'green', 'blue'];
    console.log(third); // blue

    Destructuring Objects

    With objects, destructuring lets you extract multiple properties at once.

    Old Way:

    const person = { name: 'Kirti', age: 25 };
    const name = person.name;
    const age = person.age;

    With Destructuring:

    const { name, age } = person;
    console.log(name); // Kirti
    console.log(age); // 25

    You can also rename variables:

    const { name: userName } = person;
    console.log(userName); // Kirti

    Default Values in Destructuring

    You can assign default values if the value is undefined.

    Array Example:

    const [a = 10, b = 20] = [5];
    console.log(a); // 5
    console.log(b); // 20

    Object Example:

    const { city = 'Delhi' } = { name: 'Kirti' };
    console.log(city); // Delhi

    Nested Destructuring

    You can extract values from nested objects or arrays too.

    Nested Object Example:

      const user = {
    name: 'Kirti',
    address: {
    city: 'Mumbai',
    pin: 400001
    }
    };

    const {
    address: { city, pin }
    } = user;

    console.log(city); // Mumbai

    Nested Array Example:

    const numbers = [1, [2, 3]];
    const [one, [two, three]] = numbers;
    console.log(two); // 2

    Destructuring in Function Parameters

    You can destructure directly inside function parameters.

    Object Example:

    function greet({ name, age }) {
    console.log(`Hello ${name}, age ${age}`);
    }

    greet({ name: 'Kirti', age: 25 });

    Array Example:

    function sum([a, b]) {
    return a + b;
    }

    console.log(sum([3, 4])); // 7

    Why Use Destructuring?

    • Cleaner and shorter code
    • Makes code more readable
    • Easier to work with objects and arrays
    • Useful in React, APIs, and large projects

    Quick Summary

    TypeSyntax Example
    Arrayconst [a, b] = [1, 2];
    Objectconst {x, y} = {x: 10, y: 20};
    Nestedconst {a: {b}} = obj;
    Renameconst {x: newX} = obj;
    Default Valueconst [a = 1] = [];
    Functionsfunction({name}) {} or function([a]) {}

    Final Thought

    ES6 Destructuring is a simple but powerful tool that helps make your JavaScript cleaner, more expressive, and easier to maintain. Whether you’re building a small script or a big web app, it’s a must-know feature for modern developers.