ES6 in Depth
  • Introduction
  • Installation
  • Block Scope
    • Constant
    • Use cases
  • Template String
    • New String Methods
    • Tagged Template Literal
  • New Number Methods
  • Arrow Function
    • Default Parameters
    • Lexical This Scope
    • Where not to use arrow function
  • Object Enhancement
  • New Array Methods
    • For Of
  • Spread Operator
  • Destructuring
    • Array Destructuring
  • Class
  • Symbols
  • New Data Structures
    • Set
    • Map
    • WeakSet
    • WeakMap
    • Iterators
    • Generators
  • Promise
  • Import Export
Powered by GitBook
On this page
  • Use Case 1
  • rename variable name
  • Use Case 2 - ignoring some values
  • Use Case 3 - get few item only
  • Use Case 3 ( set default value )

Was this helpful?

Destructuring

Extract values from array or object using literal syntax

var {color, position} = {
    color: "blue",
    name: "hemant",
    state: "USA",
    position: "UI Dev"
};

console.log(color, position); // blue UI Dev

Use Case 1

function generateObj(){
    return {
        color: "blue",
        name: "hemant",
        state: "USA",
        position: "UI Dev"
    };
}

var {name, state} = generateObj();
console.log(name, state); // hemant USA

rename variable name

function generateObj(){
    return {
        color: "blue",
        name: "Paa",
        state: "India",
        position: "UI Dev"
    };
}

var {name:firstName, state: location} = generateObj();
console.log(firstName, location); // Paa India

Use Case 2 - ignoring some values

var [first,,,,last] = [1,2,3,4,5];

console.log(first, last); // 1 5

Use Case 3 - get few item only

var friends = [
    {
        name: "Hemant",
        location: "Hyd",
        status: "Cool",
        email: "hemant@gmail.com"
    },
    {
        name: "Vinay",
        location: "USA",
        status: "NOO",
        email: "vinay@gmail.com"
    }
];

friends.forEach(function({name, email}){
    console.log(name +", "+ email);
});

// output
Hemant, hemant@gmail.com
Vinay, vinay@gmail.com

Use Case 3 ( set default value )

let {name='Anoymous', loc='Hyd'} = {name: "hemant"}; console.log(name, loc); // hemant Hyd

PreviousSpread OperatorNextArray Destructuring

Last updated 4 years ago

Was this helpful?