Object.defineProperty方法

Object.defineProperty方法

定义对象中新属性或修改原有的属性
Objcet.defineProperty(obj,prop,descriptor)

  • obj:必须,目标对象
  • prop:必需,需定义或修改的属性的名字
  • descriptor:必需,目标属性所拥有的特性

看一下以前添加和修改属性的方式

var obj={
    id=1;
    pname:nannan;
    }
obj.num=1000;//增加
obj.pname=litternannan;//修改
console.log(obj);

换个方法

第三属性的说明(要用花括号来写)

  • value:设置属性的值,默认为undefined;
  • writable:值是否可以重写,true/false默认为false;
  • enumberable目标属性是否可以被枚举(遍历),默认为false;
  • configurable:目标属性是否可以被删除或是否可以再次修改特性true/flase,默认可以被删除
  • **这里要注意:configurable一旦别设置成false不允许被删除整个属性,不允许修改第三个参数里(除了writable)的特性
object,defineProtype(obj,'num'{
           value:1000,
           enumerble:true,
           });
object.defineProtype(obj.'id'{
           writable:false,
           });
           obj.id=2;
           console.log(obj)//id=1,不能被修改
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值