属性名与属性值

let stu = {
  age: 110,
  name: "LLC",
}
console.log(Object.keys(stu));  //[ 'age', 'name' ]
console.log(Object.values(stu));  //[ 110, 'LLC' ]
console.log(Object.entries(stu));  //[ [ 'age', 110 ], [ 'name', 'LLC' ] ]

对 对象的属性的描述 (且以对象的形式返回描述内容)

console.log(Object.getOwnPropertyDescriptors(stu));  //结果如下
{
  age: { value: 110, writable: true, enumerable: true, configurable: true },
  name: {
    value: 'LLC',
    writable: true,
    enumerable: true,
    configurable: true
  }
}

创建对象

  • 作用:可进行配置,可以进行更深程度的克隆
let Obj = Object.create({
  //这里面写原型属性
  talk() {
    console.log("我可以说话");
  }
}, {
  //这里面写描述属性
  age: {
    /* 值 */
    value: 110,
    /* 属性特征 */
    writable: true,  //可写
    enumerable: true,  //可枚举
    configurable: true  //可配置
  },
  name: {
    value: 'LLC',
    writable: true,
    enumerable: true,
    configurable: true
  }
});