题目:给定一个随机数组,数组可能包含数组(也就是数组元素可能为数组)。要求用js实现一个函数,返回该数组中
所有元素,重复的要求去掉。例如:数组[2,3,[4,6,[3,8]],12,10] ,返回结果为[2,3,4,6,8,12,10]
<script type="text/javascript"> $(function(){ var arr=[2,3,[4,6,[3,[2,8],7]],12,10]; newArr=new Array(); arrX(arr); var newLen=newArr.length;
//查找到重复的然后把重复的删除 for(var m=0;m<=newLen-1;m++){ for(var n=m+1;n<=newLen-1;n++){ if(newArr[m]==newArr[n]){ newArr.splice(n,1); } } } console.log(newArr); }) //函数 function arrX(arrString){ var len=arrString.length; for(var i=0;i<=len-1;i++){ if( typeof arrString[i]== 'object'){ //一定要带'' 或者改成arrString[i].length>1 var m=i; //这个貌似没有必要 arrX(arrString[m]); //递归,一层又一层的查找 }else{ newArr.push(arrString[i])}; } } </script>