数组方法
indexOf
数组可以通过 indexOf()来搜索一个指定的元素的位置,如未找到返回 -1
concat
concat()方法把当前的数组 和 另一个 数组连接起来,并返回一个新的 数组
push 和 pop
push()向数组的末尾添加若干元素,pop() 则把 数组的最后一个元素删除掉
unshift 和 shift
unshift() 向数组前面添加若干元素,shift() 则把数组的第一个元素删除掉
slice
slice() 截取数组的部分元素,然后返回一个新的数组
sort
sort() 可以对当前数组排序
reverse
reverse() 把整个数组的元素给掉个个,也就是反转
join
join() 方法把数组的每个元素用指定的字符串连接起来,然后新的字符串
splice
splice() 方法是修改数组的“万能方法”,他可以从指定的索引开始删除若干元素,然 后再从该位置添加若干元素
二维数组求和
//二维数组求和
var arr =[[12,45,89],[67,21,90]];
var sum =0;
for(i in arr){
for(j in arr[i]){
sum += arr[i] [j];
}
}
console.log('待求和'+ arr);
console.log('求和等于'+ sum); */
二维数组转置 横向元素保存为纵向元素
var arr = [['a','b','c'],['d','e','f'],['g','h','i'],['j','k','l']];
var res = [];
for (var i=0;i<arr[0].length;i++) {
res[i] = [];
for (var j=0;j<arr.length;j++) {
res[i] [j] =arr[j] [i];
}
}
console.group('转置前: ');
console.log(arr);
console.groupEnd();
console.group('转置后: ');
console.log(res);
console.groupEnd();
插入排序
var arr =[99,33,6,11,2,88];
console.log('排序前'+arr);
for(var i=1;i<arr.length;i++){
for(var j=i;j>0;--j){
if(arr[j-1]>arr[j]){//后面跟前面比
[arr[j-1],arr[j]]=[arr[j],arr[j-1]];
}
}
}
console.log('排序后'+arr);
冒泡排序
var arr = [99,33,6,11,2,88];
console.log('排序前'+arr);
for(var i=1;i<arr.length;++i){ //控制需要比较的轮数
for(var j=0;j<arr.length-i;++j){ //控制参与比较的元素
if(arr[j]>arr[j+1]){ //比较相邻的两个元素
[arr[j],arr[j+1]]=[arr[j+1],arr[j]];
}
}
}
console.log('排序后'+arr);