Destructuring


    Resumo/Informações
      Utilizado para desconstruir uma data structure.
      ES5
      var john = ['John', 27];
      var name = john[0];
      var age = john[1];

      ES6
      const [name, age] = ['John', 27];
      console.log(name); John
      console.log(age); 27
      * Here we have destructured the data structure ['John', 27] using the syntax [name, age].
      * ['John', 27] with this we construct.

      const obj = {
      firstName: 'Jessica',
      lastName: 'Pearson'
      };

      Ex 01: mantendo o nome da variável
      const {firstName, lastName} = obj; this two new constants are going to store the data that comes out of the obj

      Ex 02: alterando o nome da variável do obj
      const {firstName: a, lastName: b} = obj;
      console.log(a); Jessica

      Real Application

      function calcAgeRetirement(year) {
      const age = new data().getFullYear() - year;
      return [age, 65 - age];
      }

      const [age, retirement] = calcAgeRetirement(1990);
      console.log(age); exibe a idade
      console.log(retirement); exibe o tempo de trabalho até se aposentar

      * Gerou-se duas informações na função calcAgeRetirement, onde o foi (return resultado1, resultado2), que foram armazenadas através de destructuring nas variáveis age e retirement.