Most of ECMAScript 2015 Array methods
using array.reduce
const map = (fn,arr) => arr.reduce((arr,curr)=>{
arr.push(fn(curr));
return arr;
},[])
const filter = (fn,arr) => arr.reduce((arr,curr)=>{
!!fn(curr) ? arr.push(curr) : void 0
return arr;
},[]);
const some = (fn,arr) => arr.reduce((bool,curr)=>{
return !!fn(curr) || bool ? true : false
},false);
const every = (fn,arr) => arr.reduce((bool,curr)=>{
return !!fn(curr) && bool ? true : false
},true);
const contains = (val,arr) => arr.reduce((bool,curr)=>{
return curr === val || bool ? true : false ;
},false);