JavaScript中的数组方法

发布于:2024-05-09 ⋅ 阅读:(28) ⋅ 点赞:(0)
  1. push()
    功能:在数组的末尾添加一个或多个元素,并返回新数组的长度。
    示例代码:

    let fruits = ['apple', 'banana'];
    let length = fruits.push('orange');
    console.log(fruits); // 输出:['apple', 'banana', 'orange']
    console.log(length); // 输出:3
    
  2. pop()
    功能:删除数组的最后一个元素,并返回该元素的值。
    示例代码:

    let fruits = ['apple', 'banana', 'orange'];
    let lastFruit = fruits.pop();
    console.log(fruits);     // 输出:['apple', 'banana']
    console.log(lastFruit);  // 输出:'orange'
    
  3. shift()
    功能:删除数组的第一个元素,并返回该元素的值。
    示例代码:

    let fruits = ['apple', 'banana', 'orange'];
    let firstFruit = fruits.shift();
    console.log(fruits);    // 输出:['banana', 'orange']
    console.log(firstFruit);  // 输出:'apple'
    
  4. unshift()
    功能:在数组的开头添加一个或多个元素,并返回新数组的长度。
    示例代码:

    let fruits = ['banana', 'orange'];
    let length = fruits.unshift('apple');
    console.log(fruits); // 输出:['apple', 'banana', 'orange']
    console.log(length); // 输出:3
    
  5. concat()
    功能:合并两个或多个数组,并返回新数组。
    示例代码:

    let fruits1 = ['apple', 'banana'];
    let fruits2 = ['orange', 'grape'];
    let combinedFruits = fruits1.concat(fruits2);
    console.log(combinedFruits); // 输出:['apple', 'banana', 'orange', 'grape']
    
  6. slice()
    功能:从数组中提取指定位置的元素,并返回新数组。
    示例代码:

    let fruits = ['apple', 'banana', 'orange', 'grape'];
    let slicedFruits = fruits.slice(1, 3);
    console.log(slicedFruits); // 输出:['banana', 'orange']
    
  7. splice()
    功能:向/从数组中添加/删除元素,并返回被删除的元素。
    示例代码:

    let fruits = ['apple', 'banana', 'orange'];
    fruits.splice(1, 1, 'grape', 'kiwi');
    console.log(fruits); // 输出:['apple', 'grape', 'kiwi', 'orange']
    
  8. forEach()
    功能:对数组中的每个元素执行指定的操作。
    示例代码:

    let fruits = ['apple', 'banana', 'orange'];
    fruits.forEach(function (fruit) {
      console.log(fruit);
    });
    // 输出:
    // 'apple'
    // 'banana'
    // 'orange'
    
  9. map()
    功能:对数组中的每个元素执行指定的操作,并返回一个新数组。
    示例代码:

    let numbers = [1, 2, 3];
    let doubledNumbers = numbers.map(function (number) {
      return number * 2;
    });
    console.log(doubledNumbers); // 输出:[2, 4, 6]
    
  10. filter()
    功能:根据指定条件筛选数组中的元素,并返回一个新数组。
    示例代码:

    let numbers = [1, 2, 3, 4, 5];
    let evenNumbers = numbers.filter(function (number) {
      returnnumber % 2 === 0;
    });
    console.log(evenNumbers); // 输出:[2, 4]
    
  11. reduce()
    功能:对数组中的元素执行指定的累积操作,并返回累积结果。
    示例代码:

    let numbers = [1, 2, 3, 4, 5];
    let sum = numbers.reduce(function (accumulator, number) {
      return accumulator + number;
    }, 0);
    console.log(sum); // 输出:15
    
  12. every()
    功能:检查数组中的所有元素是否满足指定条件,如果所有元素都满足条件则返回true,否则返回false。
    示例代码:

    let numbers = [1, 2, 3, 4, 5];
    let allPositive = numbers.every(function (number) {
      return number > 0;
    });
    console.log(allPositive); // 输出:true
    
  13. some()
    功能:检查数组中是否存在满足指定条件的元素,如果存在则返回true,否则返回false。
    示例代码:

    let numbers = [1, 2, 3, 4, 5];
    let hasNegative = numbers.some(function (number) {
      return number < 0;
    });
    console.log(hasNegative); // 输出:false
    
  14. find()
    功能:返回数组中满足指定条件的第一个元素,如果不存在则返回undefined。
    示例代码:

    let numbers = [1, 2, 3, 4, 5];
    let evenNumber = numbers.find(function (number) {
      return number % 2 === 0;
    });
    console.log(evenNumber); // 输出:2
    
  15. indexOf()
    功能:返回数组中第一个满足指定条件的元素的索引,如果不存在则返回-1。
    示例代码:

    let numbers = [1, 2, 3, 4, 5];
    let index = numbers.indexOf(3);
    console.log(index); // 输出:2
    
  16. includes()
    功能:检查数组中是否包含指定的元素,如果包含则返回true,否则返回false。
    示例代码:

    let numbers = [1, 2, 3, 4, 5];
    let hasNumber = numbers.includes(3);
    console.log(hasNumber); // 输出:true
    
  17. sort()
    功能:对数组进行排序,默认按照字母顺序排序。
    示例代码:

    let fruits = ['banana', 'apple', 'orange'];
    fruits.sort();
    console.log(fruits); // 输出:['apple', 'banana', 'orange']
    
  18. reverse()
    功能:颠倒数组中元素的顺序。
    示例代码:

    let fruits = ['apple', 'banana', 'orange'];
    fruits.reverse();
    console.log(fruits); // 输出:['orange', 'banana', 'apple']