JS中数组常用API

1.push()方法

push() 是 JavaScript 数组对象的一个方法,它用于将一个或多个元素添加到数组的末尾,并返回数组的新长度。

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

let count = fruits.push('orange', 'pear');
console.log(count); // 输出: 4(新数组的长度)

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

2.pop()方法

pop() 是 JavaScript 数组对象的一个方法,用于删除数组的最后一个元素,并返回该元素的值。

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

let lastFruit = fruits.pop();
console.log(lastFruit); // 输出: 'orange'

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

3.shift()方法

shift() 是 JavaScript 数组对象的一个方法,用于删除数组的第一个元素,并返回该元素的值。同时,它会将数组中的所有其他元素向前移动一个位置。

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

let firstFruit = fruits.shift();
console.log(firstFruit); // 输出: 'apple'

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

4.unshift()方法

unshift() 是 JavaScript 数组对象的一个方法,用于在数组的开头添加一个或多个元素,并返回新数组的长度。同时,它会将数组中的其他元素向后移动相应的位置。

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

let count = fruits.unshift('apple', 'pear');
console.log(count); // 输出: 4(新数组的长度)

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

5.splice()方法

splice() 是 JavaScript 数组对象的一个方法,用于修改数组,可以实现删除、插入和替换元素的操作。

let fruits = ['apple', 'banana', 'cherry', 'date'];

// 从索引 1 开始删除两个元素,并在此位置插入两个新元素
let deletedItems = fruits.splice(1, 2, 'orange', 'grape');
console.log(deletedItems); // 输出: ['banana', 'cherry']
console.log(fruits); // 输出: ['apple', 'orange', 'grape', 'date']

// 从索引 2 删除所有剩余的元素
let remainingItems = fruits.splice(2);
console.log(remainingItems); // 输出: ['grape', 'date']
console.log(fruits); // 输出: ['apple', 'orange']

6.slice()方法

slice() 是 JavaScript 数组对象的一个方法,用于从数组中提取指定范围的元素,创建一个新的数组,而不会修改原始数组。

let fruits = ['apple', 'banana', 'cherry', 'date', 'elderberry'];

let subArray = fruits.slice(1, 4);
console.log(subArray); // 输出: ['banana', 'cherry', 'date']

let subArray2 = fruits.slice(2);
console.log(subArray2); // 输出: ['cherry', 'date', 'elderberry']

7.concat()方法

concat() 是 JavaScript 数组对象的一个方法,用于将两个或多个数组合并成一个新数组。它不会修改原始数组,而是返回一个新数组。

let fruits1 = ['apple', 'banana'];
let fruits2 = ['cherry', 'date'];
let fruits3 = ['elderberry'];

let mergedArray = fruits1.concat(fruits2, fruits3);
console.log(mergedArray); // 输出: ['apple', 'banana', 'cherry', 'date', 'elderberry']

console.log(fruits1); // 输出: ['apple', 'banana']

8.join()方法

join() 是 JavaScript 数组对象的一个方法,用于将数组中的所有元素组合成一个字符串。它通过指定一个分隔符来决定元素之间的连接方式。

let fruits = ['apple', 'banana', 'cherry'];

let result = fruits.join(', ');
console.log(result); // 输出: 'apple, banana, cherry'

let result2 = fruits.join('-');
console.log(result2); // 输出: 'apple-banana-cherry'

9.indexOf()方法

indexOf() 是 JavaScript 数组对象的一个方法,用于在数组中查找指定元素首次出现的位置。

let fruits = ['apple', 'banana', 'cherry', 'banana'];

let index = fruits.indexOf('banana');
console.log(index); // 输出: 1

let index2 = fruits.indexOf('orange');
console.log(index2); // 输出: -1

10.lastIndexOf()方法

lastIndexOf() 是 JavaScript 数组对象的一个方法,用于在数组中从后往前查找指定元素最后一次出现的位置。

let fruits = ['apple', 'banana', 'cherry', 'banana'];

let index = fruits.lastIndexOf('banana');
console.log(index); // 输出: 3

let index2 = fruits.lastIndexOf('orange');
console.log(index2); // 输出: -1

11.includes()方法

includes() 是 JavaScript 数组对象的一个方法,用于判断数组是否包含指定元素。

let fruits = ['apple', 'banana', 'cherry'];

let hasBanana = fruits.includes('banana');
console.log(hasBanana); // 输出: true

let hasOrange = fruits.includes('orange');
console.log(hasOrange); // 输出: false

12.findIndex()方法

findIndex() 是 JavaScript 数组对象的一个方法,用于查找满足指定条件的元素在数组中的索引。

let numbers = [1, 2, 3, 4, 5];

let evenIndex = numbers.findIndex(function(element) {
  return element % 2 === 0;
});
console.log(evenIndex); // 输出: 1

let oddIndex = numbers.findIndex(function(element) {
  return element % 2 !== 0;
});
console.log(oddIndex); // 输出: 0

let greaterThanTenIndex = numbers.findIndex(function(element) {
  return element > 10;
});
console.log(greaterThanTenIndex); // 输出: -1

13.forEach()方法

forEach() 是 JavaScript 数组对象的一个方法,用于对数组中的每个元素执行指定的操作。

let colors = ['red', 'green', 'blue'];

colors.forEach(function(element, index) {
  console.log('Color at index ' + index + ': ' + element);
});
/* 输出:
Color at index 0: red
Color at index 1: green
Color at index 2: blue
*/

14.map()方法

map() 是 JavaScript 数组对象的一个方法,用于根据原始数组中的每个元素生成新的数组。

let numbers = [1, 2, 3, 4, 5];

let squaredNumbers = numbers.map(function(element) {
  return element ** 2;
});
console.log(squaredNumbers); // 输出: [1, 4, 9, 16, 25]

15.filter()方法

filter() 是 JavaScript 数组对象的一个方法,用于根据指定条件筛选出原始数组中满足条件的元素,并生成一个新的数组。

let numbers = [1, 2, 3, 4, 5];

let evenNumbers = numbers.filter(function(element) {
  return element % 2 === 0;
});
console.log(evenNumbers); // 输出: [2, 4]

let oddNumbers = numbers.filter(function(element) {
  return element % 2 !== 0;
});
console.log(oddNumbers); // 输出: [1, 3, 5]

16.reduce()方法

reduce() 是 JavaScript 数组对象的一个方法,用于对数组中的所有元素进行归约操作,将它们合并为一个单一的值。

let numbers = [1, 2, 3, 4, 5];

let sum = numbers.reduce(function(accumulator, element) {
  return accumulator + element;
});
console.log(sum); // 输出: 15

let product = numbers.reduce(function(accumulator, element) {
  return accumulator * element;
}, 1);
console.log(product); // 输出: 120

17.sort()方法

sort() 是 JavaScript 数组对象的一个方法,用于对原始数组进行排序。

let fruits = ['apple', 'banana', 'cherry'];

fruits.sort();
console.log(fruits); // 输出: ['apple', 'banana', 'cherry']

let numbers = [3, 1, 5, 2, 4];

numbers.sort();
console.log(numbers); // 输出: [1, 2, 3, 4, 5]

如果想要正确地对数字数组进行排序,需要传递一个自定义的 compareFunction 参数来指定排序规则。例如,要按照数字的升序进行排序,可以传递以下的 compareFunction 参数:

let numbers = [3, 1, 5, 2, 4];

numbers.sort(function(a, b) {
  return a - b;
});

console.log(numbers); // 输出: [1, 2, 3, 4, 5]

18.reverse()方法

reverse() 是 JavaScript 数组对象的一个方法,用于将原始数组中的元素顺序颠倒。

let array = [1, 2, 3, 4, 5];

array.reverse();
console.log(array); // 输出: [5, 4, 3, 2, 1]

19.find()方法

find() 是 JavaScript 数组对象的一个方法,用于查找并返回数组中满足指定条件的第一个元素。

let numbers = [1, 2, 3, 4, 5];

let evenNumber = numbers.find(function(element) {
  return element % 2 === 0;
});
console.log(evenNumber); // 输出: 2

let greaterThanThree = numbers.find(function(element) {
  return element > 3;
});
console.log(greaterThanThree); // 输出: 4

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值