数组的基本处理函数:
arr.splice(第一个参数(发生变化的位置),第二个参数(向后删除几个))
如果只有两个参数是删除,指定删除
第二个参数如果是零,那就一个都不删除
第一个参数是从数组中的第几个元素开始的位置
第二个参数是,从第一个参数的位置的向后后删除几个元素
第二个作用:在指定位置添加元素
arr.splice(第一个参数(发生变化的位置),第二个参数(向后删除几个),巴拉巴拉,巴拉巴啦…)
前两个参数作用不变,第二个元素写零
在第二个参数以后,就全是指定位置添加的元素
合并数组:将两个数组合并成一个数组,并返回出来 .concat( )
var arr=[1,2,3,4,5] // 在控制台输入合并后的数组,原始数组不会发生变化
var arr1=[6,7,8,9,10] // 合并数组需要赋值一个新的变量
var x=arr.concat(arr1) // 也可以合并多个数组,中间用逗号隔开
console.log(x)
检测元素是否在数组中:
.indexOf( ) //检测元素是否在数组中,如果在(返回元素在数组中第一次出现的位置),则返回其位置,如果不在,则返回-1
var arr=[1,2,3,4,5,3]
var x=arr.indexOf(3)
console.log(arr)
.lastIndexOf( ) //检测元素是否在数组中,如果在(返回元素在数组中最后一次出现的位置),则返回其位置,如果不在,则返回-1
var arr=[1,2,3,4,5,3]
var x=arr.lastIndexOf(3)
console.log(arr)
.sort( ) //从小到大的排序
var arr=[60,50,40,30,20,10]
arr.sort( )
console.log(arr) //控制台输出的结果为10,20,30,40,50,60
.reverse( ) //将数组中的元素颠倒一下,倒叙
var arr=[60,50,40,30,20,10]
arr.reverse( )
console.log(arr) //控制台输出的结果为10,20,30,40,50,60
.join(参数)
var arr=[10,20,30,40,50] //通过指定的字符串,将数组转换成字符并且返回出来
var str=arr.join( ) //括号里什么都不填,字符就用逗号来连接
console.log(str) //括号里填什么,字符就用什么来连接
数组的去重:
var arr=[10,10,20,20,30,30,40,40,50,50,60,60]
var x=[] // 设置一个空的数组
for(var n=0;n<arr.length;n++){
if(x.indexOf(arr[n])==-1){ // 判断x中是否有arr[n]这个元素,如果在x中没有这个元素,则进入if,如果有则不进入if
x.push(arr[n]) // 将arr[n]中的元素添加到x[n]中
}
}
console.log(x)
第二种数组去重的方法,使用indexOf,lastIndexOf,splice
var arr=[10,10,10,10,10,20,20,30,30,40,50,50,60]
for(var n=0;n<arr.length;n++){
if(arr.indexOf(arr[n])!=arr.lastIndexOf(arr[n])){
arr.splice(arr.lastIndexOf(arr[n]),1)
n–
}
}
console.log(arr)
第三种数组去重方法,利用选择排序法;
var arr=[10,10,10,10,10,20,20,30,30,40,50,50,60]
for(var n=0;n<arr.length;n++){
for(var j=0;j<arr.length;j++){
if(arr[n]==arr[j]){
arr.splice(j,1)
n–
}
}
}
console.log(arr)