php object 增加属性,Object.defineProperties 添加一个/多个属性到对象;修改已有属性...

object.defineProperties(object, descriptors)

作用:除了可以用构造函数和字面量的方式为对象设置属性,也可以使用 object.defineProperties来添加/设置对象属性。

object

必需。 对其添加或修改属性的对象。  这可以是本机 JavaScript 对象或 DOM 对象。

descriptors

必需。 包含一个或多个描述符对象的 JavaScript 对象。  每个描述符对象描述一个数据属性或访问器属性(意思就是对象具有数据属性或者访问器属性)。 详见:数据属性和访问器属性

以下例子给ling 这个对象设置了 数据属性 name 和 访问器属性 setNameWarmingvar ling={};

Object.defineProperties(ling,{

name:{

value:"zzling", //设置该属性的初始值

writable:false, //设置可修改性

enumerable:true, //设置可枚举性

configurable:true, //设置可设置性

},

setNameWarming:{

set:function(newVal){

alert("警告:有人试图用setNameWarming 访问器属性设置name 的值为"+newVal);

this.name=newVal

},

get:function(){

return this.name

},

enumberable:true,

configurable:true

}}

);

ling.setNameWarming="lingggggg" //调用setName 访问器属性(函数),尝试把name 值改为"linggggg"

document.write("ling.name的值:"+ling.name) //因为writable(是否可修改)特性为 false。所以name属性值无法修改,还是返回"ling"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值