UNPKG

moy-fp

Version:
33 lines (30 loc) 660 B
import curry from '../Function/curry' import toString from '../String/toString' /** * [a] -> [a] -> [a] */ const difference = curry( (list2, list1) => { const differenceObj = {}, delimiter = String.fromCharCode(0), result = [] for(let item of list2){ differenceObj[ Object.prototype.toString.call(item) + delimiter + toString(item) ] = true } for(let item of list1){ if(!differenceObj[ Object.prototype.toString.call(item) + delimiter + toString(item) ]){ result.push(item) } } return result } ) export default difference