function union (a) {
                    var args = libs.object.only(libs.object.toArray(arguments), 'array');

                    var union = [];
                    args.unshift(a);
                    libs.object.each(args, function (array) {
                        libs.object.each(array, function (item) {
                            if(union.indexOf(item) === -1) union.push(item);
                        });
                    });
                    return union;
                }
function union (a) {
                    var args = libs.object.only(libs.object.toArray(arguments), 'array');

                    var union = [];
                    args.unshift(a);
                    libs.object.each(args, function (array) {
                        libs.object.each(array, function (item) {
                            if(union.indexOf(item) === -1) union.push(item);
                        });
                    });
                    return union;
                }
function union ( a ) { var args = libs . object . only ( libs . object . toArray ( arguments ) , 'array' ) ; var union = [ ] ; args . unshift ( a ) ; libs . object . each ( args , function ( array ) { libs . object . each ( array , function ( item ) { if ( union . indexOf ( item ) === - 1 ) union . push ( item ) ; } ) ; } ) ; return union ; }
Computes the union between the current array, and all the array objects passed in. That is,
the set of unique objects present in all of the arrays.
@param {Array} a The Array object to operate on.
@param {...Array} arr A list of array objects
@return {Array<*>} The union set of the provided arrays.
Computes the union between the current array and all the array objects passed in . That is the set of unique objects present in all of the arrays .