You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
71 lines
2.3 KiB
71 lines
2.3 KiB
4 years ago
|
# to-object-path [![NPM version](https://badge.fury.io/js/to-object-path.svg)](http://badge.fury.io/js/to-object-path)
|
||
|
|
||
|
> Create an object path from a list or array of strings.
|
||
|
|
||
|
## Install
|
||
|
|
||
|
Install with [npm](https://www.npmjs.com/)
|
||
|
|
||
|
```sh
|
||
|
$ npm i to-object-path --save
|
||
|
```
|
||
|
|
||
|
## Usage
|
||
|
|
||
|
```js
|
||
|
var toPath = require('to-object-path');
|
||
|
|
||
|
toPath('foo', 'bar', 'baz');
|
||
|
toPath('foo', ['bar', 'baz']);
|
||
|
//=> 'foo.bar.baz'
|
||
|
```
|
||
|
|
||
|
Also supports passing an arguments object (without having to slice args):
|
||
|
|
||
|
```js
|
||
|
function foo()
|
||
|
return toPath(arguments);
|
||
|
}
|
||
|
|
||
|
foo('foo', 'bar', 'baz');
|
||
|
foo('foo', ['bar', 'baz']);
|
||
|
//=> 'foo.bar.baz'
|
||
|
```
|
||
|
|
||
|
Visit the [example](./example.js) to see how this could be used in an application.
|
||
|
|
||
|
## Related projects
|
||
|
|
||
|
* [get-value](https://www.npmjs.com/package/get-value): Use property paths (` a.b.c`) to get a nested value from an object. | [homepage](https://github.com/jonschlinkert/get-value)
|
||
|
* [has-value](https://www.npmjs.com/package/has-value): Returns true if a value exists, false if empty. Works with deeply nested values using… [more](https://www.npmjs.com/package/has-value) | [homepage](https://github.com/jonschlinkert/has-value)
|
||
|
* [omit-value](https://www.npmjs.com/package/omit-value): Omit properties from an object or deeply nested property of an object using object path… [more](https://www.npmjs.com/package/omit-value) | [homepage](https://github.com/jonschlinkert/omit-value)
|
||
|
* [set-value](https://www.npmjs.com/package/set-value): Create nested values and any intermediaries using dot notation (`'a.b.c'`) paths. | [homepage](https://github.com/jonschlinkert/set-value)
|
||
|
* [unset-value](https://www.npmjs.com/package/unset-value): Delete nested properties from an object using dot notation. | [homepage](https://github.com/jonschlinkert/unset-value)
|
||
|
|
||
|
## Running tests
|
||
|
|
||
|
Install dev dependencies:
|
||
|
|
||
|
```sh
|
||
|
$ npm i -d && npm test
|
||
|
```
|
||
|
|
||
|
## Contributing
|
||
|
|
||
|
Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/to-object-path/issues/new).
|
||
|
|
||
|
## Author
|
||
|
|
||
|
**Jon Schlinkert**
|
||
|
|
||
|
+ [github/jonschlinkert](https://github.com/jonschlinkert)
|
||
|
+ [twitter/jonschlinkert](http://twitter.com/jonschlinkert)
|
||
|
|
||
|
## License
|
||
|
|
||
|
Copyright © 2015 Jon Schlinkert
|
||
|
Released under the MIT license.
|
||
|
|
||
|
***
|
||
|
|
||
|
_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on October 28, 2015._
|