14 lines
		
	
	
		
			345 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			14 lines
		
	
	
		
			345 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| module.exports = function (xs, fn) {
 | |
|     var res = [];
 | |
|     for (var i = 0; i < xs.length; i++) {
 | |
|         var x = fn(xs[i], i);
 | |
|         if (isArray(x)) res.push.apply(res, x);
 | |
|         else res.push(x);
 | |
|     }
 | |
|     return res;
 | |
| };
 | |
| 
 | |
| var isArray = Array.isArray || function (xs) {
 | |
|     return Object.prototype.toString.call(xs) === '[object Array]';
 | |
| };
 |