Spread syntax on objects
by Arnaud Buchholz
JavaScript
console.log({})
const obj1 = { a: 1 }
console.log({ ...obj1 }, Object.assign({}, obj1))
const obj2 = Object.create(obj1)
obj2.b = 2
console.log({ ...obj2 }, Object.assign({}, obj2))
const obj3 = {}
const symb1 = Symbol('symb1')
obj3[symb1] = 3
console.log({ ...obj3 }, Object.assign({}, obj3))
const obj4 = {}
Object.defineProperty(obj4, 'd', {
value: 4,
enumerable: false
})
console.log({ ...obj4 }, Object.assign({}, obj4))
const obj5 = ['a', 'b']
console.log({ ...obj5 }, Object.assign({}, obj5))