1将数组中数字内容求和
var sum = 0; var attr = [12,34,2,5,76]; for(var i = 0;i < attr.length;i++){ sum = sum + attr[i]; }alert(sum);
2、var arr = [4, 0, 7, 9, 0, 0, 2, 6, 0, 3, 1, 0];
要求将数组中的0项去掉,将不为0的值存入一个新的数组,生成新的数组
var attr = [4, 0, 7, 9, 0, 0, 2, 6, 0, 3, 1, 0]; var newAttr = []; for(var i = 0;i<attr.length;i++){ if(attr[i] == 0)continue; newAttr.push(attr[i]); }alert(newAttr);
3、写出一个javascript的函数,实现对一个数组去重的功能。
构建一个新的数组存放结果。
for循环中每次从原数组中取出一个元素,用这个元素循环与结果数组对比。
若结果数组中没有该元素,则存到结果数组中。
var attr = [2,34,2,5,6,9,8,4,34,67,6]; var newAtrr = []; var flag = true; for(var i = 0;i< attr.length;i++){ // 方法一 // if(newAtrr.indexOf(attr[i]) == -1){ // newAtrr.push(attr[i]); // } // 方法二 flag = true; for(var j = 0;j < newAtrr.length;j++){ if(newAtrr[j] == attr[i]){ flag = false; } }; if(flag){ newAtrr.push(attr[i]) } }console.log(newAtrr);
4、数组最大值
var attr = [12,34,2,5,76]; var max =attr[0]; var maxIndex = 0; for(var i = 0;i<attr.length;i++){ if(attr[i]>max){ max = attr[i]; maxIndex = i; } max = attr[i]?attr[i]:max; } alert(max);
6、.往数组里面添加数据的时候去重
var attr = [10,20]; for(var i = 0;i < 10;i++){ var num = prompt("请输入数字"); if(attr.indexOf(num) == -1){ attr.push(num); } } console.log(attr);
5、.用js实现随机选取10~100之间的10个数字,存入一个数组,并排序。
用的冒泡排序的写法
var attr = []; for(var i = 0;i < 10;i++){ attr[i] = parseInt(Math.random()*90+10); } var attr = [69,54,95,47,88,17,42,93,85,67]; for(var j = 0;j < attr.length-1;j++){ for(var k = j+1;k < attr.length;k++){ if(attr[j] > attr[k]){ var zhong = attr[j]; attr[j] = attr[k]; attr[k] = zhong; } } } console.log(attr); var b = [69,54,95,47,88,17,42,93,85,67]; for(j = 0;j<b.length;j++){ for(k = 0;k < b.length-1-j;k++){ if(b[k] > b[k+1]){ var temp = b[k]; b[k] = b[k+1]; b[k+1] = temp; } } }