Last active
January 15, 2020 14:19
-
-
Save brunos3d/86684ca944cc2183c1fb725f95769b18 to your computer and use it in GitHub Desktop.
ES6 - 3 Formas de desestruturar um objeto com javascript
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var objeto = { tamanho: 10, nome: undefined, peso: 180 }; | |
// =========================================== exemplo 1 | |
// "desmembramento manual" =[ | |
var size = objeto.tamanho; | |
var name = objeto.nome || "Bruno"; | |
var weight = objeto.peso; | |
console.log(size, name, weight); | |
// =========================================== exemplo 2 | |
// Mesmo efeito utilizando mas de uma forma ainda mais "simples" | |
function desmembrar(tamanho, nome = "Samu", peso) { | |
return { size: tamanho, name: nome, weight: peso }; | |
} | |
// blaahhh | |
Object.assign(this, desmembrar(...Object.values(objeto))); | |
// chatooo | |
console.log(this.size, this.name, this.weight); | |
// ou ainda com o uso do with para não precisar usar "this." em cada propriedade | |
with (desmembrar(...Object.values(objeto))) { | |
console.log(size, name, weight); | |
} | |
// =========================================== exemplo 3 | |
// Mesmo efeito só que dessa vez utilizando desestruturação do ES6 | |
var { tamanho: size, nome: name = "Caio", peso: weight } = objeto; | |
// bem mais prático ;) | |
console.log(size, name, weight); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment