JS中对数组的简单操作

一、增加数组元素

1.push()方法

语法:数组名.push(参数)

功能:在数组末尾添加一个或多个元素

参数:需要添加进数组末尾的一个或多个元素

返回值:在末尾添加完数组元素后数组的总长度

const arr=['a','b']
let num=arr.push('c','d')  
console.log(arr)    // ['a','b','c','d'] 
console.log(num)    //  4

2.unshift() 方法

语法:数组名.unshift(参数)

功能:在数组首部添加一个或多个元素

参数:需要在数组首部添加的一个或多个数组元素

返回值:添加完数组元素后数数组的总长度

const arr=['a','b']
let num=arr.push('c','d')  
console.log(arr)    // ['a','b','c','d'] 
console.log(num)    //  4

const num2=arr.unshift('e','f')
console.log(arr)    //['e','f','a','b','c','d']
console.log(num2)   //  6

二、删除数组元素 

1. pop()方法

语法:数组名.pop()

功能:删除数组的最后一个元素

参数:

返回值:从数组末尾删除的元素

const arr=['a','b']
let num=arr.push('c','d')  
console.log(arr)    // ['a','b','c','d'] 
console.log(num)    //  4

const num2=arr.unshift('e','f')
console.log(arr)    //['e','f','a','b','c','d']
console.log(num2)   //  6

const res=arr.pop()
console.log(arr)   //['e','f','a','b','c']
console.log(res)   // d

2. shift() 方法 

语法:数组名.shift()

功能:删除数组第一个元素

参数:

返回值:从数组中删除的首位元素

const arr=['a','b']
let num=arr.push('c','d')  
console.log(arr)    // ['a','b','c','d'] 
console.log(num)    //  4

const num2=arr.unshift('e','f')
console.log(arr)    //['e','f','a','b','c','d']
console.log(num2)   //  6

const res=arr.pop()
console.log(arr)   //['e','f','a','b','c']
console.log(res)   // d

const res2=arr.shift()
console.log(arr)   //['f','a','b','c']
console.log(res2)  // e

三、截取数组:splice()方法

语法一:数组名.splice(参数1,参数2) 

参数:参数1:起始索引

          参数2:需要从数组中截取出的元素的个数

功能:从数组的索引值为参数1的元素开始截取出参数2个元素

返回值:截取出的元素组成的新数组

const arr=['a','b','c','d']
const res=arr.splice(1,2)
console.log(arr)    // ['a','d']
console.log(res)    // ['b','d']

语法二:数组名.splice(参数1,参数2,参数3) 

参数: 参数1:起始索引

           参数2:需要从数组中截取出的元素的个数

           参数3:向数组内插入的一个或多个元素

功能: 从数组索引为参数1的位置开始裁剪参数2个元素,并从索引为参数1的位置开始插入参数3

返回值:若参数2为0,即不删除数组元素,返回值为[]

              若参数2不为0,返回值为截取出的元素组成的新数组

const arr=['a','b','c','d']
const res=arr.splice(1,2)
console.log(arr)    // ['a','d']
console.log(res)    // ['b','d']

const res2=arr.splice(1,0,'e','f','g')
console.log(arr)     // ['a','e','f','g','d']
console.log(res2)    // []

const res3=arr.splice(1,2,'A','B')
console.log(arr)     // ['a','A','B','g','d']
console.log(res3)    // ['e','f']

 四、排序 sort()方法

语法一: 数组名.sort()    默认按照字符串排序

语法二: 数组名.sort(function (a,b) {return a-b})   正序排列

语法三: 数组名.sort(function (a,b) {return b-a})   倒序排列

const arr = [2, 63, 48, 5, 4, 75, 69, 11, 23]
arr.sort()
console.log(arr);   //[11,2,23,4,48,5,63,69,75]
arr.sort(function(a,b){return(a-b)})
console.log(arr);   //[1,4,5,11,23,48,63,69,75]
arr.sort(function(a,b){return(b-a)})
console.log(arr);   //[75,69,63,48,23,11,5,4,1]

五、数组其他方法(简单)

1.concat() 方法:合并数组

语法: 数组名.concat(数据)

作用: 合并数组的

返回值: 一个新的数组

const array1 = ['a', 'b', 'c']
const array2 = ['d', 'e', 'f']
const array3 = array1.concat(array2)
console.log(array3)   //['a', 'b', 'c','d', 'e', 'f']

2.slice()方法:截取数组的一部分数据

语法: 数组名.slice(开始索引,结束索引)

作用: 就是截取数组中的一部分数据

返回值: 就是截取出来的数据,放到一个新的数组中

注意: 截取的数据包含开始索引不包含结束索引,原数组不变

var arr = [10, 20, 10, 30, 40, 50, 60]
res = arr.slice(1,4)
console.log(arr)     //[10, 20, 10, 30, 40, 50, 60]
console.log(res);    //[20,10,30]

 3.join() 方法:数组转字符串

语法:数组名.join('连接符')

作用: 把一个数组转成字符串

返回值: 转好的一个字符串

const arr = ['小学', '中学', '大学']
console.log(arr.join())    // 不传参数,默认会用逗号把元素拼接成一个字符串:小学,中学,大学
console.log(arr.join('-')) // 小学-中学-大学
console.log(arr.join(':')) // 小学:中学:大学

4.indexOf() 方法: 从左检查数组中有没有这个数值

语法一:数组名.indexOf(要查询的数据)

作用: 就是检查这个数组中有没有该数据,如果有就返回该数据第一次出现的索引,

         如果没有返回 -1

语法二:数组名.indexOf(要查询的数据,开始索引)

//indexOf 语法一
let arr1 = [10, 20, 10, 30, 40, 50, 60]
res = arr1.indexOf(10)
console.log(arr1)
console.log(res);   // 0
//*************************************
//indexOf  语法二
let arr2 = [10, 20, 20, 30, 10, 50, 60]
res = arr2.indexOf(10, 2)
console.log(arr2)
console.log(res);   //4

5.lastIndexOf 从右检查数组中有没有这个数值

语法一:数组名.indexOf(要查询的数据)

作用: 就是检查这个数组中有没有该数据,如果有就返回该数据第一次出现的索引

         如果没有返回 -1

语法二:数组名.lastIndexOf(要查询的数据,开始索引)

//lastIndexOf 语法一
let arr1 = [10, 20, 10, 30, 40, 50, 60]
res = arr1.lastIndexOf(50)
console.log(arr1)
console.log(res)     // 5
//*************************************
//lastIndexOf 语法二
let arr2 = [10, 20, 10, 30, 40, 50, 60]
res1 = arr2.lastIndexOf(40, 2)
res2 = arr2.lastIndexOf(40,5)
console.log(arr2)
console.log(res1)    // -1
console.log(res2)    // 4

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值