Object.defineProperty(); //定义一个'只读'的对象
Object.definePropertys(); //定义多个'只读'的对象

不可修改不可枚举不可删除

参数:

Object.defineProperty(object, property, descriptor);
  1. object: 对象
  2. property: 属性
  3. descriptor: 描述
    1. writable: false //是否可修改
    2. enum: false     //是否可枚举

Object.definePropertys(object, property, descriptor);
  1. object: 对象
  2. property: 属性
  3. descriptor: 描述
    1. writable: false //是否可修改
    2. enum: false     //是否可枚举

用法:

function defineProperty () {
  let _obj = {};
  Object.definePropertie(_obj, 'a', {
    value: 1,
    writable: false/true
  });
  return _obj;
}
let obj = defineProperty();
console.log(obj);   // {a: 1}

function definePropertys () {
  let _obj = {};
  Object.defineProperties(_obj, {
    a: {
      value: 1,
      writable: false/true
    },
    b: {
      value: 2
    }
  });
  return _obj;
}
let objs = definePropertys();
console.log(objs);  // {a: 1, b: 2}

风逝无殇
13 声望0 粉丝