js数组的增删改查,十二种方法(含代码)


让我为大家介绍一下数组的增删改查的方法吧!本人文笔有限,如有什么不对的地方,请大家见谅!

1.unshift——从数组前方添加

unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度,会改变原数组

	//创建一个数组
	var arr = [1,2,3,4,5]
	//使用unshift()方法增加
	console.log(arr.unshift(0));//返回数组长度,6
	console.log(arr);//输出结果  [0, 1, 2, 3, 4, 5]  在数组最前面添加一个元素
	arr.unshift(-2,-1)//可以一直往前加
	console.log(arr);//输出结果[-2, -1, 0, 1, 2, 3, 4, 5]

2.push——从数组后方添加

push() 方法可向数组的末尾添加一个或更多元素,并返回新的长度,会改变原数组

	// 创建一个数组
	var arr = [1,2,3,4,5]
	//使用push()方法增加
	console.log(arr.push(6));//返回数组长度,6
	console.log(arr);//输出结果  [ 1, 2, 3, 4, 5, 6]  在数组最末尾添加一个元素
	arr.push(7,8)//可以一直往末尾添加
	console.log(arr);//输出结果[ 1, 2, 3, 4, 5, 6, 7, 8]

3.shift——从数组最前面删除

shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值,会改变原数组

	// 创建一个数组
	var arr = [1,2,3,4,5]
	//使用shift()方法,删除数组的第一个元素
	console.log(arr.shift());//返回被删除的第一个元素,输出:1
	console.log(arr);//输出结果  [ 2, 3, 4, 5]  数组第一个元素已被删除
	console.log(arr.length);//输出结果为:4    会改变原数组的长度

4.pop——从数组末尾删除

pop() 方法用于把数组的最后一个元素从其中删除,并返回最后一个元素的值,会改变原数组

	// 创建一个数组
	var arr = [1,2,3,4,5]
	//使用pop()方法,删除数组的第一个元素
	console.log(arr.pop())//返回被删除的最后一个元素,输出:5
	console.log(arr);//输出结果   [ 1, 2, 3, 4] 数组最后一个元素已被删除
	console.log(arr.length);//输出结果为:4    会改变原数组的长度

5.splice——可以实现添加、删除、替换操作

splice()方法用于添加、删除、替换某一个元素,十分好用,会改变原数组
当splice()一个参数时,代码如下:

	// 创建一个数组
	var arr = [1,2,3,4,5]
	// 使用splice方法
	// 一个值时从下标为start开始删除,包括自身,一直删到末尾
	console.log(arr.splice(1))//下标为1开始删除,返回被删除的元素[2,3,4,5]
	console.log(arr)//会改变原数组返回1

当splice()二个参数时,代码如下:

	// 创建一个数组
	var arr = [1,2,3,4,5]
	// 使用splice方法
	//  二个值时,splice(从哪开始删(下标),删除的个数从1开始不是0)
	console.log(arr.splice(0,1))//下标0开始,删除一个,也就是删除了1这个元素,返回被删除的元素
	console.log(arr)//会改变原数组,返回[2,3,4,5]

当splice()三个参数及以上时,代码如下:

	// 创建一个数组
	var arr = [1, 2, 3, 4, 5]
	// 使用splice方法
	// splice(从哪开始删(下标),删除的个数从1开始不是0,往这个删除的元素之前添加的元素)
	//可以添加多个
	console.log(arr.splice(0, 1, -1, -2))//删除1这个元素往这个元素前添加
	console.log(arr)//会改变原数组,返回[-1,-2,2,3,4,5]

6.slice——截取数组

可以用来从数组提取指定元素,该方法不会改变数组,而是将截取到的元素封装到一个新数组中返回
参数:
1.截取开始位置的索引,包含开始索引
2.截取结束位置的索引,不包含结束索引
第二个值可以省略不写,此时会截取从开始索引开始往后的所有元素

代码如下:

	// 创建一个数组
	var arr = ["a","b","c","d"]
	// 当slice一个参数时
	var result=arr.slice(2)
	console.log(result)//返回["c","d"]
	// 当slice二个参数时
	var result1 = arr.slice(0,2)
	console.log(result1)//返回["a","b"]

7.delete——删除元素但保留自身

delete可以删除元素但保留自身,代码如下:

	// 创建一个数组
	var arr = [1, 2]
	// 使用delete,它与其它方法使用格式不太一样
	var del = delete arr[0]//删除下标为0的元素,保留自身
	console.log(arr)//会改变原数组,返回[空,2]

8.reverse——反转数组

反转数组,会改变原数组,代码如下:

	// 创建一个数组
	var arr = [1, 2, 3, 4]
	//使用reverse()方法
	arr.reverse()
	console.log(arr)//会改变原数组,返回[4,3,2,1]

9.concat——拼接数组

可以拼接数组,代码如下:

	// 创建一个数组
	var arr = [1, 2]
	var arr1 = [3, 4]
	// 使用concat方法可以拼接数组返回一个新数组
	var arr2 =arr.concat(arr1)
	console.log(arr2)//输出[1,2,3,4]

10.join——数组转换成字符串

join()可以把数组转换成字符串,代码如下:

	// 创建一个数组
	var arr = [1, 2, 3, 4]
	//使用reverse()方法
	var str = arr.join(",")//添加,可以拼接成字符串
	console.log(str)//会把数组装换成字符串,返回1,2,3,4(字符串类型)

11.indexOf——查找数组是否存在这个元素

indexOf()可以查找这个值是否存在,存在则返回其第一次出现的索引,不存在返回-1
代码如下:

	// 创建一个数组
	var arr = [1, 2, 3, 4]
	//使用indexOf()方法,indexOf(想要查找的值,如果是字符串记得用''包起来),
	//可以查找是否存在这个值,如果存在返回这个元素的下标,不存在返回-1
	console.log(arr.indexOf(0))//返回-1,找不到返回-1
	console.log(arr.indexOf(1))//返回0,下标为0

12.lastIndexOf——查找数组是否存在这个元素

lastIndexOf与indexOf不一样,lastIndexOf是从后往前查找,存在返回目标元素下标,不存在返回-1
代码如下:

	// 创建一个数组
	var arr = [1,2,3,1,2,3]
	// lastIndexOf是从后往前查找
	//可以查找是否存在这个值,如果存在返回这个元素的下标,不存在返回-1
	console.log(arr.lastIndexOf(0))//返回-1
	console.log(arr.lastIndexOf(1))//返回3

感谢大家的阅读,如果有什么不对的地方,可以向我提出,感谢大家!

你可能感兴趣的:(javascript,前端,开发语言)