define-configurable
Version:
Defines new (or modifies existing) properties (using Object.defineProperty, setting `configurable: true` by default
43 lines (35 loc) • 1.23 kB
Markdown
Defines new (or modifies existing) properties using Object.defineProperty on an object passed to define as this, setting configurable by default
[](https://travis-ci.org/vigour-io/define-configurable)
[](http://standardjs.com/)
[](https://badge.fury.io/js/define-configurable)
[](https://coveralls.io/github/vigour-io/define-configurable?branch=master)
--
**Simple**
```javascript
const define = require('define-configurable')
const subject = {}
const props = [
{ one: true },
{ two () {
console.log('do nothing')
}
}
]
define.apply(subject, props)
```
**Extend**
```javascript
const define = require('define-configurable')
const subject = {
search (arg) {}
}
define.apply(subject, {
extend: {
// optmized method for extending up till 7 arguments
search (method, arg) {
return method.call(this, arg)
}
}
})
```