js中哪些数组方法会影响到原数组

Posted 五花肉三七分

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js中哪些数组方法会影响到原数组相关的知识,希望对你有一定的参考价值。

最近在做一些面试题时经常会遇见js中哪些数组方法会影响到原数组这个问题,我很早就学了js,现在也忘得差不多了,刚好边做题边复习,这里整理了一下哪些数组方法会影响到原数组。


push()方法:

/*
			 * push()
			 * 	- 该方法可以向数组的末尾添加一个或多个元素,并返回数组的新的长度
			 * 	- 可以将要添加的元素作为方法的参数传递,
			 * 		这样这些元素将会自动添加到数组的末尾
			 * 	- 该方法会将数组新的长度作为返回值返回
			 */

			var result = arr.push("唐僧","蜘蛛精","白骨精","玉兔精");

pop()方法:

/*
			 * pop()
			 * 	- 该方法可以删除数组的最后一个元素,并将被删除的元素作为返回值返回
			 */
			result = arr.pop();

unshift()方法:

/*
			 * unshift()
			 * 	- 向数组开头添加一个或多个元素,并返回新的数组长度
			 * 	- 向前边插入元素以后,其他的元素索引会依次调整
			 */
			//console.log(arr);

			arr.unshift("牛魔王","二郎神");

shift()方法:

/*
			 * shift()
			 * 	- 可以删除数组的第一个元素,并将被删除的元素作为返回值返回
			 */
			result = arr.shift();

splice()方法:


			/*
			 * splice()
			 * 	- 可以用于删除数组中的指定元素
			 * 	- 使用splice()会影响到原数组,会将指定元素从原数组中删除
			 * 		并将被删除的元素作为返回值返回
			 * 	- 参数:
			 * 		第一个,表示开始位置的索引
			 * 		第二个,表示删除的数量
			 * 		第三个及以后。。
			 * 			可以传递一些新的元素,这些元素将会自动插入到开始位置索引前边
			 * 	
			 */
			
			arr = ["孙悟空","猪八戒","沙和尚","唐僧","白骨精"];
			var result = arr.splice(3,0,"牛魔王","铁扇公主","红孩儿");

reverse()方法:

//反转数组的顺序
var arr = ['one', 'two', 'three'];
arr.reverse(); 
console.log(arr); // ['three', 'two', 'one']

sort()方法:

//排序方法
sort()方法,两个参数,前减后就是往下升序,后减前就是降序

结尾:

下次整理一下不会影响原数组的方法。

以上是关于js中哪些数组方法会影响到原数组的主要内容,如果未能解决你的问题,请参考以下文章

JS数组方法中哪些会改变原数组,哪些不会?

js数组遍历方法总结

几个关于js数组方法reduce的经典片段

Js数组

几个关于js数组方法reduce的经典片段

数组都有哪些方法? 哪些会改变原数组?