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.
		
		
		
		
			
				
					30 lines
				
				527 B
			
		
		
			
		
	
	
					30 lines
				
				527 B
			| 
								 
											4 years ago
										 
									 | 
							
								'use strict';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								module.exports = function union(init) {
							 | 
						||
| 
								 | 
							
								  if (!Array.isArray(init)) {
							 | 
						||
| 
								 | 
							
								    throw new TypeError('arr-union expects the first argument to be an array.');
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  var len = arguments.length;
							 | 
						||
| 
								 | 
							
								  var i = 0;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  while (++i < len) {
							 | 
						||
| 
								 | 
							
								    var arg = arguments[i];
							 | 
						||
| 
								 | 
							
								    if (!arg) continue;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    if (!Array.isArray(arg)) {
							 | 
						||
| 
								 | 
							
								      arg = [arg];
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    for (var j = 0; j < arg.length; j++) {
							 | 
						||
| 
								 | 
							
								      var ele = arg[j];
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      if (init.indexOf(ele) >= 0) {
							 | 
						||
| 
								 | 
							
								        continue;
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								      init.push(ele);
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								  return init;
							 | 
						||
| 
								 | 
							
								};
							 |