UNPKG

js-fns

Version:

Modern JavaScript utility library focused on the build size

36 lines (29 loc) 818 B
'use strict' exports.default = union /** * Creates a new array with all unique elements from the given arrays. * * @param arrays - The array of arrays of elements to get unique elements from * @returns An array with all unique elements from the given arrays * * @category Array * @public */ function union() { var uniqueSet = new Set() var result = [] for (var arrayIndex = 0; arrayIndex < arguments.length; arrayIndex++) { var array = arrayIndex < 0 || arguments.length <= arrayIndex ? undefined : arguments[arrayIndex] for (var elementIndex = 0; elementIndex < array.length; elementIndex++) { var element = array[elementIndex] if (!uniqueSet.has(element)) { uniqueSet.add(element) result.push(element) } } } return result }