JS学习进阶中 come on!

1,定义新的属性来扩展对象

新方法:defineProperty()

实例:

var data = {};

Object.defineProperty(data,"type",{

  value: "primary",      //设置初始值,不能改变,删除,

  enumerable: true   //可枚举

});

console.log(data.type);   //primary

特点:给对象添加一个属性而不直接赋值,使我们对于对象的行为和状态有了某些控制,

 

 

扩展总结:    限制——>

1,Object.preventExtensions(obj);    不允许给一个对象添加新的属性

if(Object.isExtensible(obj)){    //判断是否对象可扩展

//扩展对象

}

2,object.seal();阻止对属性描述符的修改,且不允许添加新属性

3,Object.freeze();冻结该对象,不能添加属性,不能修改已有属性

 

      基础功能了解,更深的用处还需多实践,看别人的代码,加油!

posted on 2016-11-14 22:00  hboot  阅读(378)  评论(0编辑  收藏  举报

导航