You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

46 lines
1.9 KiB
Markdown

8 years ago
# assure-array
Wraps a value in an array if it isn't already one. Returns an empty array for `null` and `undefined`.
A typical usecase for this: when you have an option that accepts multiple values as an array, but you want to make the use of an array literal optional when there's only a single value to specify.
8 years ago
## License
[WTFPL](http://www.wtfpl.net/txt/copying/) or [CC0](https://creativecommons.org/publicdomain/zero/1.0/), whichever you prefer. A donation and/or attribution are appreciated, but not required.
## Donate
Maintaining open-source projects takes a lot of time, and the more donations I receive, the more time I can dedicate to open-source. If this module is useful to you, consider [making a donation](http://cryto.net/~joepie91/donate.html)!
8 years ago
You can donate using Bitcoin, PayPal, Flattr, cash-in-mail, SEPA transfers, and pretty much anything else. Thank you!
8 years ago
## Contributing
Pull requests welcome. Please make sure your modifications are in line with the overall code style, and ensure that you're editing the files in `src/`, not those in `lib/`.
Build tool of choice is `gulp`; simply run `gulp` while developing, and it will watch for changes.
Be aware that by making a pull request, you agree to release your modifications under the licenses stated above.
## Usage
Some examples:
```javascript
var assureArray = require("assure-array");
assureArray("hello world"); // ["hello world!"]
assureArray(["hello", "world"]); // ["hello", "world"]
assureArray(null); // []
assureArray([true]); // [true]
```
8 years ago
## API
### assureArray(value)
Ensures that the provided `value` is returned as an array.
* If `value` is an array already, this returns the array unchanged.
* If `value` is `null` or `undefined`, this returns an empty array.
* If `value` is any other kind of value, this returns a new array containing just that one value.