关键词

javascript中的Array对象(数组的合并、转换、迭代、排序、堆栈)

下面是关于JavaScript中的Array对象的完整攻略:

概述

Array是JavaScript中用于存储和操作一组数据的对象,它是一种有序列表,可以存储不同类型的值,包括数字、字符串、对象、甚至是其它数组。

在使用Array时,我们可以通过许多方法来操作它,这些方法可以帮助我们对数组进行合并、转换、迭代、排序和操作堆栈。接下来我们将逐一介绍这些方法。

数组的合并

concat()

concat()方法用于合并两个或多个数组,不会改变原数组,而是返回一个新数组,新数组包含原数组中的所有元素以及参数列表中的所有元素。

const arr1 = ['a', 'b'];
const arr2 = ['c', 'd'];
const arr3 = ['e', 'f'];

const arr = arr1.concat(arr2, arr3);

console.log(arr); // ['a', 'b', 'c', 'd', 'e', 'f']

spread operator

除了concat()方法,还可以使用扩展运算符(...)将多个数组合并为一个新数组。

const arr1 = ['a', 'b'];
const arr2 = ['c', 'd'];
const arr3 = ['e', 'f'];

const arr = [...arr1, ...arr2, ...arr3];

console.log(arr); // ['a', 'b', 'c', 'd', 'e', 'f']

数组的转换

join()

join()方法将数组中的所有元素连接成一个字符串。默认情况下,元素之间用逗号分隔。我们可以向join()方法传递一个字符串参数,指定其他分隔符。

const arr = ['a', 'b', 'c', 'd'];

const str1 = arr.join(); // 'a,b,c,d'
const str2 = arr.join('-'); // 'a-b-c-d'

console.log(str1);
console.log(str2);

slice()

slice()方法用于将数组的一部分创建为一个新的数组,原数组不会改变。该方法接受两个参数,第一个参数表示开始位置,第二个参数表示结束位置(不包含),如果省略第二个参数,则会返回从开始位置到数组末尾的所有元素。

const arr = [1, 2, 3, 4, 5];

const arr1 = arr.slice(0, 2); // [1, 2]
const arr2 = arr.slice(2); // [3, 4, 5]

console.log(arr1);
console.log(arr2);

数组的迭代

forEach()

forEach()方法用于遍历数组中的每个元素,并对每个元素执行回调函数。该方法不会返回任何值。

const arr = [1, 2, 3, 4, 5];

arr.forEach(item => {
  console.log(item);
})

map()

map()方法用于将数组的每个元素映射到一个新数组中,原数组不会改变。该方法接受一个回调函数,回调函数的返回值会成为新数组中对应位置的元素。

const arr = [1, 2, 3, 4, 5];

const newArr = arr.map(item => item * 2);

console.log(newArr); // [2, 4, 6, 8, 10]

reduce()

reduce()方法用于对数组中的所有元素进行累加,并返回累加结果。该方法接受一个回调函数和一个初始值,回调函数接受两个参数,第一个参数是累加结果,第二个参数是当前遍历的数组元素。

const arr = [1, 2, 3, 4, 5];

const sum = arr.reduce((result, item) => result + item, 0);

console.log(sum); // 15

数组的排序

sort()

sort()方法用于对数组进行排序。默认情况下,该方法将数组中的所有元素转换为字符串进行排序,不过我们可以向该方法传递一个回调函数来指定自定义的排序规则。

const arr = [3, 1, 2, 5, 4];

arr.sort();

console.log(arr); // [1, 2, 3, 4, 5]

const arr2 = [3, 1, 2, 5, 4];

arr2.sort((a, b) => a - b);

console.log(arr2); // [1, 2, 3, 4, 5]

数组的堆栈操作

push()

push()方法用于在数组末尾添加一个或多个元素,并返回新数组的长度。

const arr = [1, 2, 3];

const len = arr.push(4, 5);

console.log(len); // 5

console.log(arr); // [1, 2, 3, 4, 5]

pop()

pop()方法用于从数组末尾移除一个元素,并返回该元素的值。

const arr = [1, 2, 3];

const item = arr.pop();

console.log(item); // 3

console.log(arr); // [1, 2]

示例

数组过滤器

const arr = [1, 2, 3, 4, 5];

const newArr = arr.filter(item => item > 3);

console.log(newArr); // [4, 5]

数组去重

const arr = [1, 1, 2, 3, 3, 4, 4, 5];

const newArr = Array.from(new Set(arr));

console.log(newArr); // [1, 2, 3, 4, 5]

以上就是JavaScript中Array对象的完整攻略,希望能对你有所帮助。

本文链接:http://task.lmcjl.com/news/11775.html

展开阅读全文