1.打平嵌套数组 [1, [2, [3], 4], 5] => [1, 2, 3, 4, 5]
2.用js实现随机选取10~100之间的10个数字,存入一个数组,并排序。
3 .寻觅两个有序数组最小相同元素
a = [1, 2, 5, 9, 10]
b = [3, 4, 6, 9, 10]
解
var arr= [1, [2, [3], 4], 5]; var str=arr.toString(); var show=[]; for(var i=0;i<str.length;i++){ if(true) show.push(Number(str[i]));//将字符串的每一项转化为数字 } console.log(show.filter(function(x){ return Boolean(x); //去除数组里面的NaN,false ,0,null等 } ));// [1, 2, 3, 4, 5]var result=[];while(true){ var flag=false; var random=parseInt(10+(90-10)*(Math.random()));//求一个在1-100的随机数 for(var i=0;i<result.length;i++){ if(random==result[i]){ flag=true; break; } } if(!flag){ result.push(random); } if(result.length==10){ break; }} result.sort(function(a,b){ return a-b; }) console.log(result); function min(arr1,arr2){ var result=[]; for(var i=0;i<arr1.length;i++){ if(arr2.indexOf(arr1[i])!=-1){ result.push(arr1[i]);//得到相同项的数组 } } return Math.min.apply(this,result); } var a=[1,6,7,2,0,5]; var b=[2,3,4,5,6,1,8,-1]; console.log(min(a,b));//1