您的位置:首页 > Web前端

前端面试题:企业面试真题——15

2020-08-24 13:47 696 查看
var arr1= [1,1,1,2,3,3,4,5,6], arr2=[4,4,4,5,5,6,7,8,8,9];
编写函数实现数组合并去重:arr = [1,2,3,4,5,6,7,8,9]
[code]function mergeArr(a1, a2){
//利用对象的hash去重
var temp = {};
//找到长度较大的数组
var len = Math.max(a1.length, a2.length);
for(var i=0; i<len; i++){
//用一个循环遍历2个数组, 因为不能保证数组长度一致
//因此需要判断是否为空
//若不为空, 则以key的形式添加到temp中
a1[i]?temp[a1[i]] = 1:"";
a2[i]?temp[a2[i]] = 1:"";
}
//将对象的key全部取出,则是最终去重合并后的数组
//但是取出的key都是字符串类型, 要还原成数字的话
//借助map方法
return Object.keys(temp).map(Number);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: