62 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			62 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
concat-map
 | 
						|
==========
 | 
						|
 | 
						|
Concatenative mapdashery.
 | 
						|
 | 
						|
[](http://ci.testling.com/substack/node-concat-map)
 | 
						|
 | 
						|
[](http://travis-ci.org/substack/node-concat-map)
 | 
						|
 | 
						|
example
 | 
						|
=======
 | 
						|
 | 
						|
``` js
 | 
						|
var concatMap = require('concat-map');
 | 
						|
var xs = [ 1, 2, 3, 4, 5, 6 ];
 | 
						|
var ys = concatMap(xs, function (x) {
 | 
						|
    return x % 2 ? [ x - 0.1, x, x + 0.1 ] : [];
 | 
						|
});
 | 
						|
console.dir(ys);
 | 
						|
```
 | 
						|
 | 
						|
***
 | 
						|
 | 
						|
```
 | 
						|
[ 0.9, 1, 1.1, 2.9, 3, 3.1, 4.9, 5, 5.1 ]
 | 
						|
```
 | 
						|
 | 
						|
methods
 | 
						|
=======
 | 
						|
 | 
						|
``` js
 | 
						|
var concatMap = require('concat-map')
 | 
						|
```
 | 
						|
 | 
						|
concatMap(xs, fn)
 | 
						|
-----------------
 | 
						|
 | 
						|
Return an array of concatenated elements by calling `fn(x, i)` for each element
 | 
						|
`x` and each index `i` in the array `xs`.
 | 
						|
 | 
						|
When `fn(x, i)` returns an array, its result will be concatenated with the
 | 
						|
result array. If `fn(x, i)` returns anything else, that value will be pushed
 | 
						|
onto the end of the result array.
 | 
						|
 | 
						|
install
 | 
						|
=======
 | 
						|
 | 
						|
With [npm](http://npmjs.org) do:
 | 
						|
 | 
						|
```
 | 
						|
npm install concat-map
 | 
						|
```
 | 
						|
 | 
						|
license
 | 
						|
=======
 | 
						|
 | 
						|
MIT
 | 
						|
 | 
						|
notes
 | 
						|
=====
 | 
						|
 | 
						|
This module was written while sitting high above the ground in a tree.
 |