1.返回属性具有什么特性?
const obj1 = {
a: 'a',
b: 'b',
c: 'c'
}
Object.keys(obj1)
const obj2 = Object.create({}, {
getFoo: {
value: () => this.foo,
}
})
obj2.foo = 2
Object.keys(obj2)
2.包含继承的属性?
class A {
constructor(name) {
this.name = name
}
}
class B extends A {
constructor(name, age) {
super(name);
this.age = age
}
}
let dog = new B('张顺飞', 33)
Object.keys(dog)
3.返回的属性顺序是什么样的?属性中有小数和负数,返回的顺序是什么样的?
let fa = Symbol('a')
const obj3 = {
8: '1',
a: 'a',
1: '2',
b: '1',
0: '1'
}
obj3[fa] = 'fa'
Object.keys(obj3)
4.Object.keys(null)和Object.keys(undefined)
Object.keys(null)
Object.keys(undefined)
5.Object.keys(123)和Object.keys('123')区别
Object.keys(123)
Object.keys('123')