数组方法
unshift - 给数组开头添加一个或多个元素 - 返回数组新长度
var arr = ['a','b','c']; var l = arr.unshift('d') console.log(arr) // ['d','a','b','c'] console.log(l) // 4
shift - 删除数组的第一个元素 - 返回被删掉的元素
var arr = ['a','b','c']; var ele = arr.shift() console.log(arr) // ['b','c'] console.log(ele) // 'a'
push - 给数组的末尾添加一个或多个元素 - 返回数组新长度
var arr = ['a','b','c']; var l = arr.push('d') console.log(arr) // ['a','b','c','d'] console.log(l) // 4
pop - 删除数组最后一个元素 - 返回被删掉的元素
var arr = ['a','b','c']; var ele = arr.pop() console.log(arr) // ['a','b'] console.log(ele) // 'c'
join - 将数组中的元素使用指定的连接符连接在一起
var arr = ['a','b','c']; var str = arr.join('_') // 参数是连接符 console.log(str) // a_b_c var str = arr.join() // 默认使用逗号连接 console.log(str) // a,b,c var str = arr.join('') console.log(str) // abc
splice - 对数组做增、删、改的操作
var arr = ['a','b','c'] // 改 - 参数1:开始下标;参数2:删除的个数;参数3:在删除的位置放上的新的元素 - 可以是多个 arr.splice(1,1,'d') // ['a','d','c'] // 增 arr.splice(1,0,'d') // ['a','d','b','c'] - 删除0个,就是不删除,然后放上新元素 // 删 - 第三个参数可以省略 arr.splice(1,0) // ['a','c']
concat - 数组的拼接
var arr = ['a','b','c']; var brr = ['d','e','f']; // 将arr和brr合成一个更大的数组 var crr = arr.concat(brr) // ['a','b','c','d','e','f'] // 将一个或多个值和数组合并成一个大数组 var crr = arr.concat(1,2,3)// ['a','b','c',1,2,3]
sort - 数组的排序
var arr = [9,5,3,7,1,6,4,8,2]; arr.sort() // 默认升序 console.log(arr) // [1,2,3,4,5,6,7,8,9] arr.sort(function(a,b){ // a代表前面的数,b代表后面的数 return a-b; // 升序 - 如果前面的数-后面的数>0,则交换位置 return b-a; // 降序 - 如果后面的数-前面的数>0,则交换位置 })
reverse - 数组的反转
var arr = ['a','b','c']; arr.reverse() console.log(arr) // ['c','b','a']
slice - 截取数组
var arr = ['a','b','c','d','e','f']; // 将数组中的 'b','c','d'截取出来,组成新的数组 var brr = arr.slice(1,4) // 参数1是开始截取的下标,参数2是截取的结束下标,结果中不包含结束下标对应的元素 console.log(brr) // ['b','c','d'] // 如果省略第2个参数,默认从开始下标截取到数组末尾 var crr = arr.slice(1) console.log(crr) // ['b','c','d','e','f']
用于遍历数组
arr.forEach(function(值, 下标, 当前数组){ // 代码段 }); # 在这个方法中需要传入一个函数参数,这个函数的参数说明如下: # 参数1:数组遍历出来的每个值 # 参数2:可选项。数组遍历出来的每个值对应的下标 # 参数3:可选项。被遍历的当前数组
遍历数组,并将每个元素经过函数处理后,形成新的元素,所有新元素组成新数组返回
arr.map(function(值,下标,当前数组){ return 新的值 - 通常新的值是由旧的值处理以后得到 });
将数组中满足指定条件的值,组成新的数组返回
arr.filter(function(值, 下标, 当前数组){ return 筛选条件 });
查找某个元素在数组中第一次出现的位置
arr.indexOf(元素,[开始查找的起始下标]);
# 参数1:将要查找的元素
# 参数2:可选项。从哪个下标开始往后查找
# 返回值:如果找到了,就返回这个元素在数组中的下标,如果没有找到,就返回-1
布尔值 = 数组.some(function(v,i,a){ return 条件; }) // 上面的i和a是可选参数
布尔值 = 数组.every(function(){ return 条件 }) // 上面的i和a是可选参数
值 = 数组.find(function(v,i,a){ return 条件 }) // 上面的i和a是可选参数
findIndex - 查找数组中满足条件的第一个对应的下标,找到返回下标,找不到返回-1
下标 = 数组.findIndex(function(v,i,a){ return 条件 }) // 上面的i和a是可选参数