数组常用的方法
* 1.push
语法:数组.push(数据)
作用:在数组末尾添加数据
返回值:追加数据后,数组的最新长度(length)
var arr = [1, 2, 3]
var len = arr.push(500)
console.log('返回值',len)
console.log(arr)
* 2.pop
语法:数组.pop()
作用:删除数组最后一条数据
返回值:被删除的数据
var arr = [1, 2, 3]
var po = arr.pop(3)
console.log('返回值',po)
console.log(arr)
* 3.unshift
语法:数组.unshift(数据)
作用:向数组开头添加数据
返回值:添加数据后,数组最新的长度(length)
var arr = [1, 2, 3]
var len = arr.unshift(666)
console.log('返回值',len)
console.log(arr)
* 4. shift
语法:数组.shift()
作用:删除数组第一条数据
返回值:被删除的数据
var arr = [1, 2, 3]
var sh = arr.shift()
console.log('返回值',sh)
console.log(arr)
* 5. reverse
语法:数组.reverse()
作用:反转数组
返回值:反转后的数组
var arr = [1, 2, 3]
var newArr = arr.reverse()
console.log('返回值:',newArr)
console.log('arr:',arr)
* 6. sort
语法1: 数组.sort()
作用:会将数据转换为字符串后,一位一位的对比
语法2: 数组.sort(function (a,b) {return a - b})
作用:会按照数字大小升序排列,也就是从小到大排列
语法2: 数组.sort(function (a,b) {return b - a})
作用:会按照数字大小降序排列,也就是从大到小排列
返回值:排序后的数组
6.1
var arr = [3, 5, 10, 20, 100, 162]
var newArr = arr.sort()
console.log('返回值',newArr)
console.log('arr',arr)
6.2
var arr = [3, 5, 10, 20, 100, 162]
var newArr = arr.sort(function (a,b) {return a - b})
console.log('返回值',newArr)
console.log('arr',arr)
6.3
var arr = [3, 5, 10, 20, 100, 162]
var newArr = arr.sort(function (a,b) {return b - a})
console.log('返回值',newArr)
console.log('arr',arr)
*** 7. splice
语法1:数组.splice(开始索引,多少个)
作用:截取数组部分内容
语法2:数组.splice(开始索引,多少个,插入的数据1,插入的数据2,插入的数据3....)
作用:截取数组部分内容,并插入新的数据
返回值:截取出来的部分内容,组成的数组
7.1
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]
var newArr = arr.splice(3,4)
console.log('返回值',newArr)
console.log(arr)
7.2
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]
var newArr = arr.splice(3,4,'我是新插入进来的数据1','数据2')
console.log('返回值',newArr)
console.log(arr)
--------------------------数组的方法能够改变原数组的 只有上面的7个方法--------------------------->
*** 8. slice
语法: 数组.slice(开始索引,结束索引)
参数:
+ 包前不包后:包含开始索引位置的数据,不包含结束索引位置的数据
+ 不写开始索引默认是0;不写结束索引,默认是数组length
+ 参数支持写负数,表示倒数第几个,其实就是length + 负数
作用:截取数组部分内容
返回值: 截取出来的部分内容组成的新数组
8.1包前不包后
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]
var newArr = arr.slice(1,4)
console.log('返回值',newArr)
console.log(arr)
8.2不写结束索引
var newArr = arr.slice(5)
8.3不写开始和结束索引
var newArr = arr.slice()
8.4索引为负数
var newArr = arr.slice(3,-2)
* 9.concat
语法: 原始数组.concat(数组1, 数组2, ...,数据1, 数据2....)
作用: 进行数据拼接,把数组1...数据1之类的小括号里的内容,拼接在原始数组中
返回值: 拼接好的数组
var arr = [1, 2, 3, 4]
var newArr = arr.concat([4, 5, 6], [10, 20], ['a', 'b', 'c', 'qwe'])
console.log('返回值:',newArr)
console.log(arr)
* 10. join
语法: 数组.join('连接符')
作用: 使用'连接符',把数组内的每一个数据连成一个字符串(不写连接符默认使用的是 逗号)
返回值: 连接好的字符串
var arr = [1, 2, 3, 4]
var newArr = arr.join()
console.log('返回值:',newArr)
var arr = [1, 2, 3, 4]
var newArr = arr.join('!')
console.log('返回值:',newArr)
* 11. indexOf
语法1: 数组.indexOf(要检查的数据)
作用:从前到后(从左到右),检查该数据第一次在该数据内出现的 索引
语法2: 数组.indexOf(要检查的数据,开始索引)
作用:再开始索引的位置,按照从左到右的顺序,检查该数据第一次在该数组内出现的索引
返回值: 找到数据的情况下,会将该数据第一次出现的下标(索引)返回
没找到的情况下,会直接返回一个 -1
11.1
var arr = [1, 1, 2, 2, 3, 3, 0, 4, 0]
var num = arr.indexOf(100)
console.log('返回值:',num)
var arr = [1, 1, 2, 2, 3, 3, 0, 4, 0]
var num = arr.indexOf(1)
console.log('返回值:',num)
11.2
var arr = [1, 1, 2, 2, 3, 3, 0, 4, 0]
var num = arr.indexOf(1,3)
console.log('返回值:',num)
* 12. lastIndexOf
语法1: 数组.lastIndexOf(要检查的数据)
作用:从后向前(从右到左),检查该数据第一次在该数据内出现的 索引
语法2: 数组.lastIndexOf(要检查的数据,开始索引)
作用:再开始索引的位置,按照从右到左的顺序,检查该数据第一次在该数组内出现的索引
返回值: 找到数据的情况下,会将该数据第一次出现的下标(索引)返回
没找到的情况下,会直接返回一个 -1
12.1
var arr = [1, 1, 2, 2, 3, 3, 0, 4, 0]
var num = arr.lastIndexOf(3)
console.log('返回值:',num)
12.2
var arr = [1, 1, 2, 2, 3, 3, 0, 4, 0]
var num = arr.lastIndexOf(3,2)
console.log('返回值:',num)