Object.defineProperty

顾名思义,为对象定义属性。在js中我们可以通过下面这几种方法定义属性

3种定义对象属性的方法

var someOne = {};
// (1) define someOne property name
someOne.name = 'cover';
//or use (2) 
someOne['name'] = 'cover';
// or use (3) defineProperty
Object.defineProperty(someOne, 'name', {
    value : 'cover'
})

使用Object.defineProperty定义对象属性看起来很麻烦,但是这种方式是十分强大的

我们可以通过Object.defineProperty这个方法,直接在一个对象上定义一个新的属性,或者是修改已存在的属性。最终这个方法会返回该对象。

继续阅读