{
const obj = Object.create({
bar: 'bar'
})
obj.foo = 'foo'
for (let key in obj) {
console.log(obj[key])
}
}
{
const obj = Object.create({
bar: 'bar'
})
obj.foo = 'foo'
Object.keys(obj).forEach((key) => {
console.log(obj[key])
})
}
{
const obj = Object.create({
bar: "bar"
}, {
baz: {
value: 'baz',
enumerable: false
}
})
obj.foo = 'foo';
console.log(obj)
Object.getOwnPropertyNames(obj).forEach((key) => {
console.log(obj[key])
})
}
{
const obj = Object.create({
bar: "bar"
}, {
baz: {
value: 'baz',
enumerable: false
}
})
Object.defineProperties(obj, {
[Symbol('baz')]: {
value: 'Symbol baz',
enumerable: false
}
})
obj[Symbol('foo')] = 'Symbol foo'
Object.getOwnPropertySymbols(obj).forEach((key) => {
console.log(obj[key])
})
}
{
const obj = Object.create({
bar: "bar"
}, {
baz: {
value: 'baz',
enumerable: false
}
})
Object.defineProperties(obj, {
[Symbol('baz')]: {
value: 'Symbol baz',
enumerable: false
}
})
obj[Symbol('foo')] = 'Symbol foo'
Reflect.ownKeys(obj).forEach((key) => {
console.log(obj[key])
})
}
console