/*

Métodos úteis em Objetos

Object.keys => Retorna mostrando apenas as chaves do objeto;

Object.values ​​=> Retorna mostrando os valores das chaves do objeto;

Object.entries => Восстанавливает массив наиболее рандомно, так как разделы и ценности делают объекты;

Object.assign({}, любой);

Object.getOwnPropertyDescriptor(objeto, ‘propriedade’) =› использовать как свойства делают objeto;

…(spread) =› Espalha os valores da variável;

— — — — — — — — — —

Object.freeze =› Конгела или объект

Object.defineProperties =› Определить различные свойства

Object.defineProperty =› Определить уникальное свойство

*/

const produto = { nome: ‘Caneca’, preco: 1.8 }
const outraCoisa = { …produto }
const qualquerCoisa = { nome: produto.nome, preco: produto.preco }

// alterando valores originais da variável produto

outraCoisa.preco = 5.4
outraCoisa.nome = ‘Copo’
console.log(produto)
console.log(outraCoisa)
console.log(qualquerCoisa)
console.log(Object.keys(produto))
console.log(Object.getOwnPropertyDescriptor(produto, ‘nome’))

//для em Object.entries

for (let entry of Object.entries(produto)) {
console.log(entry)
}

//Деструктуризация em laço для отсутствия Object.entries

for (let [chave, valor] of Object.entries(produto)) {
console.log(chave, valor)
}

выход: