UNPKG

moy-fp

Version:
30 lines (27 loc) 522 B
import curry from '../Function/curry' /** * (a -> String) -> [a] -> [a] -> [a] */ const unionBy = curry( (fn, list2, list1) => { const unionObj = {}, result = [] let id for(let item of list1){ id = fn(item) if(!unionObj[id]){ result.push(item) unionObj[id] = true } } for(let item of list2){ id = fn(item) if(!unionObj[id]){ result.push(item) unionObj[id] = true } } return result } ) export default unionBy