首页 > web前端 > js教程 > Javascript - 数组方法

Javascript - 数组方法

Mary-Kate Olsen
发布: 2025-01-23 16:33:09
原创
802 人浏览过

Javascript - Array methods

JavaScript数组方法详解

本文将深入探讨JavaScript中常用的数组方法,涵盖元素增删、查找、转换、排序、组合及迭代等方面,并提供代码示例,帮助您更好地理解和应用这些方法。

1. 元素添加与删除

  • push(): 向数组末尾添加元素。
<code class="language-javascript">let fruits = ["apple", "banana"];
fruits.push("cherry");
console.log(fruits); // Output: ["apple", "banana", "cherry"]</code>
登录后复制
  • pop(): 删除数组末尾元素。
<code class="language-javascript">fruits.pop();
console.log(fruits); // Output: ["apple", "banana"]</code>
登录后复制
  • unshift(): 向数组开头添加元素。
<code class="language-javascript">fruits.unshift("mango");
console.log(fruits); // Output: ["mango", "apple", "banana"]</code>
登录后复制
  • shift(): 删除数组开头元素。
<code class="language-javascript">fruits.shift();
console.log(fruits); // Output: ["apple", "banana"]</code>
登录后复制

2. 查找与搜索

  • indexOf(): 返回指定元素在数组中第一次出现的索引。
<code class="language-javascript">let numbers = [10, 20, 30, 40];
console.log(numbers.indexOf(20)); // Output: 1</code>
登录后复制
  • includes(): 检查数组是否包含指定元素。
<code class="language-javascript">console.log(numbers.includes(30)); // Output: true
console.log(numbers.includes(50)); // Output: false</code>
登录后复制

3. 数组转换

  • map(): 创建一个新数组,其元素是原数组元素经由回调函数处理的结果。
<code class="language-javascript">let numbers = [1, 2, 3];
let squares = numbers.map(num => num * num);
console.log(squares); // Output: [1, 4, 9]</code>
登录后复制
  • filter(): 创建一个新数组,其元素是原数组中满足指定条件的元素。
<code class="language-javascript">let evenNumbers = numbers.filter(num => num % 2 === 0);
console.log(evenNumbers); // Output: [2]</code>
登录后复制
  • reduce(): 将数组元素累积成一个值。
<code class="language-javascript">let sum = numbers.reduce((acc, num) => acc + num, 0);
console.log(sum); // Output: 6</code>
登录后复制

4. 排序

  • sort(): 对数组进行排序(默认按字母顺序)。 数字需要自定义比较器。
<code class="language-javascript">let fruits = ["banana", "apple", "cherry"];
fruits.sort();
console.log(fruits); // Output: ["apple", "banana", "cherry"]

let numbers = [10, 5, 20];
numbers.sort((a, b) => a - b); // 升序
console.log(numbers); // Output: [5, 10, 20]</code>
登录后复制
  • reverse(): 反转数组。
<code class="language-javascript">fruits.reverse();
console.log(fruits); // Output: ["cherry", "banana", "apple"]</code>
登录后复制

5. 数组组合与提取

  • concat(): 合并两个或多个数组。
<code class="language-javascript">let arr1 = [1, 2];
let arr2 = [3, 4];
let combined = arr1.concat(arr2);
console.log(combined); // Output: [1, 2, 3, 4]</code>
登录后复制
  • slice(): 提取数组的一部分,不修改原数组。
<code class="language-javascript">let numbers = [10, 20, 30, 40];
let sliced = numbers.slice(1, 3);
console.log(sliced); // Output: [20, 30]</code>
登录后复制
  • splice(): 向数组添加或删除元素。
<code class="language-javascript">let fruits = ["apple", "banana", "cherry"];
fruits.splice(1, 1, "orange", "grape");
console.log(fruits); // Output: ["apple", "orange", "grape", "cherry"]</code>
登录后复制

6. 数组迭代

  • forEach(): 为数组中的每个元素执行一个函数。
<code class="language-javascript">let numbers = [1, 2, 3];
numbers.forEach(num => console.log(num * 2)); // Output: 2, 4, 6</code>
登录后复制

7. 其他常用方法

  • join(): 将数组转换为字符串,使用指定的分隔符。
<code class="language-javascript">let fruits = ["apple", "banana", "cherry"];
console.log(fruits.join(", ")); // Output: "apple, banana, cherry"</code>
登录后复制
  • find(): 返回满足指定条件的第一个元素。
<code class="language-javascript">let numbers = [10, 20, 30];
let result = numbers.find(num => num > 15);
console.log(result); // Output: 20</code>
登录后复制
  • findIndex(): 返回满足指定条件的第一个元素的索引。
<code class="language-javascript">console.log(numbers.findIndex(num => num > 15)); // Output: 1</code>
登录后复制
  • flat(): 展平嵌套数组。
<code class="language-javascript">let nested = [1, [2, 3], [4, [5]]];
console.log(nested.flat(2)); // Output: [1, 2, 3, 4, 5]</code>
登录后复制

以上是Javascript - 数组方法的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板