javaScript 数组操作

Posted 逡橙

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javaScript 数组操作相关的知识,希望对你有一定的参考价值。

一、数组的删除

1. splice()

splice(index,length) 方法可实现从数组下标index开始,连续删除length 长度,并返回删除元素 如:

var a = [0,1,2,3,4,5]
console.log(a.splice(1,2)); //[1,2]
console.log(a);  // [0,3,4,5]

splice(index,length,value) 传第三个值时候就会将删除的部分替换成所传value

var a = [0,1,2,3,4,5]`
console.log(a.splice(1,2,99)); //[1,2]
console.log(a);  // [0,99,3,4,5]

2. slice()

slice(start,end) 从 start 到 end 的元素的选定,start,end都表示数据下标,该方法不会修改原数组,但能用选定实现删除效果

var b = [2,3,4,5,6];
console.log(b.slice(1,3));  //[3,4]
console.log(b);  //[2,3,4,5,6]

3. pop()

pop() 删除并返回数组的最后一个元素,会改变原数组。

var c = [1,2,3,4];
console.log(c.pop()); //4
console.log(c);  //[1,2,3]

二、数组增加

1. push()

push() 向数组的末尾添加一个或多个元素,并返回新的长度。末尾添加,返回的是长度,原数组改变

var a = [0,1,2];
var b = a.push(3);
console.log(a);  //[0,1,2,3]
console.log(b);  //3

2. unshift()

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

var a = [1,2,3];
console.log(a.unshift(4)); //4
console.log(a); //[4,1,2,3]

3. concat()

concat() 方法用于连接两个或多个数组,仅仅只连接,不做其他操作,(不去重,排序)

var a = [3,2,3];
var b = [4,5];
var c = arr1.concat(arr2);
console.log(c); //[3, 2, 3, 4, 5]

数组排序

1. sort()

sort() 按照字符编码的顺序进行排序.

var arr = [George,John,Thomas,James,Adrew,Martin]
console.log(arr.sort())//Adrew,George,James,John,Martin,Thomas
var numberArr= [10,5,40,25,1000,1]
console.log(numberArr.sort())//1,10,1000,25,40,5
//这样排序,个人觉得很鸡肋 ,
如果要实现数字排序就需要传入一个函数

function sortNumber(a,b)
{
return a - b
}
var numberArr= [10,5,40,25,1000,1]
console.log(numberArr.sort(numberArr))
// [1,5,10,25,40,1000]

2. reverse()

reverse() 颠倒数组中元素的顺序。返回颠倒后的数组,原数组改变。

var a = [1,2,3,4];
console.log(a.reverse()); //[4,3,2,1]
console.log(a);  //[4,3,2,1]

三、 数组遍历

1 map()

map() 对数组每一项遍历并可实现操作,返回一个操作后的数组,原数组不改变

var numberArr = [1, 2, 3, 4, 5];
var addArr = numbers.map(function(x) {
   return x + 2;
});
console.log(addArr) // [3,4,5,6,7]
console.log(numberArr) //[1, 2, 3, 4, 5]

2. forEach()

forEach() 和map 区别是 forEach没有新数组返回,需要定义量接收新的数组

var numberArr = [1, 2, 3, 4, 5];
var ppp = []
var addArr = numberArr.forEach(element => {
      ppp.push(element+2)
});
console.log(numberArr) // [1, 2, 3, 4, 5]
console.log(ppp) //[3, 4, 5, 6, 7]

以上是关于javaScript 数组操作的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript单行代码,也就是代码片段

JavaScript 片段

JavaScript 代码片段

10个JavaScript代码片段,使你更加容易前端开发。

10个JavaScript代码片段,使你更加容易前端开发。

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