1.问题描述
编写一个程序,封装一个函数uniq(arr),将数组中的重复的元素去除,并且返回一个新的数组。
事例一
输入:[1,1,2,2,3,4,5]
输出:[1,2,3,4,5]
2.算法描述
首先声明一个新的数组,用来装载没有重复元素的数组,再用循环去遍历实参的这个数组,看看这个元素有没有在数组里面出现,再将result数组当中添加没有出现的元素。
3. 实验讨论与结果
找出其中的内在逻辑,分析,并写出过程,数入值,输出结果。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
</body>
</html>
<script type="text/javascript">
function uniq (arr){
var result=[];
for (var i=0; i<arr.length; i++){
if (result.indexOf(arr[i])==-1){
result.push(arr[i]);
}
}
return result
}
var result1=uniq([1,2,2,3,4,5])
console.log(result1)
</script>
4.结语
这个去除重复元素利用了查询和添加元素的方法,将每个元素都查询出来,再将查到的第一个不同的元素添加进新的数组。
稿件来源:深度学习与文旅应用实验室(DLETA)
作者:黄飞鸿
主编:欧洋