数组

数组

数组(Array)是一种用于存储多个值的有序集合。数组允许你按索引访问其元素,并提供了许多内置的方法来操作数组中的数据。

数组创建

可以通过数组字面量来创建数组

//创建数组
let a = [1, 2, 3];

属性和方法

名称类型参数返回值说明
length属性int获取字符串长度
join方法separator?:stringstring将数组的所有元素连接成一个字符串
push方法element: anyany[]向数组末尾添加一个元素
pop方法any[]移除并返回数组末尾的元素
shift方法any[]移除并返回数组头部的元素
unshift方法element: anyany[]向数组头部添加一个元素
slice方法start: int, end: intany[]截取数组的子数组
splice方法start: int, deleteCount: int, items: ...anyany[]从数组中删除或添加元素
indexOf方法element: anyint返回数组中第一次出现元素的索引
lastIndexOf方法element: anyint返回数组中最后一次出现元素的索引
filter方法predicate: Functionany[]过滤数组中的元素
sort方法compareFn?:(a:any,b:any) => booleanany[]对数组进行排序
map方法callback: Functionany[]映射数组中的元素
copy方法dest: arrayany[]复制数组中的元素到另一个数组
delete方法index: intany[]删除数组中指定索引的元素
includes方法element: anyboolean检查数组是否包含指定元素
reverse方法any[]反转数组中的元素
unique方法any[]移除数组中的重复元素

length

返回数组的长度。

示例


let arr = [1, 2, 3];
console.log(arr.length); // 输出: 3

join

将数组的所有元素连接成一个字符串。

示例


// 使用逗号连接
let result = ["a", "b", "c"].join(",");
console.log(result); // 输出: "a,b,c"

// 分隔符默认为,
result = ["a", "b", "c"].join();
console.log(result); // 输出: "a,b,c"

push

向数组末尾添加一个元素。

示例

let arr = [1, 2, 3];
let length = arr.push(4);
console.log(length); // 输出(返回新的数组长度): 4
console.log(arr); // 输出: [1, 2, 3, 4]

pop

移除并返回数组末尾的元素。

示例


let arr = [1, 2, 3];
arr.pop(arr);
console.log(arr); // 输出: [1,2]

shift

移除并返回数组头部的元素。

示例


let arr = [1, 2, 3];
arr.shift();
console.log(arr); // 输出: [2,3]

unshift

向数组头部添加一个元素。

示例


let arr = [1, 2, 3];
let length = arr.unshift(0);
console.log(length); // 输出(返回新的数组长度): 4
console.log(arr); // 输出: [0, 1, 2, 3]

slice

截取数组的子数组。

示例


let arr = [1, 2, 3, 4, 5];
let result = arr.slice(1, 3);
console.log(result); // 输出: [2, 3]

splice

从数组中删除或添加元素。

示例


let arr = [1, 2, 3, 4, 5];
arr.splice(1, 2, 6, 7);
console.log(arr); // 输出: [1, 6, 7, 4, 5]

indexOf

返回数组中第一次出现元素的索引。

示例


let arr = [1, 2, 3, 2, 1];
let index = arr.indexOf(2);
console.log(index); // 输出: 1

index = arr.indexOf(4);
console.log(index); // 输出: -1

lastIndexOf

返回数组中最后一次出现元素的索引。

示例


let arr = [1, 2, 3, 2, 1];
let index = arr.lastIndexOf(2);
console.log(index); // 输出: 3

index = arr.lastIndexOf(4);
console.log(index); // 输出: -1

filter

过滤数组中的元素。

示例


let arr = [1, 2, 3, 4, 5];
let result = arr.filter(x => x % 2 === 0);
console.log(result); // 输出: [2, 4]

sort

对数组进行排序。

语法

arr.sort(compareFn?:(a:any,b:any) => boolean)

参数

  • compareFn: (可选) 比较函数。如果不提供比较函数,默认将元素转为字符串进行比较

如果比较函数返回true,表示a元素应该排在b元素之前。 如果比较函数返回false,表示a元素不应该排在b元素之前。

示例


let arr = [3, 1, 4, 1, 5, 9];
arr.sort();
console.log(arr); // 输出: [1, 1, 3, 4, 5, 9]


arr = [3, 1, 4, 1, 5, 9];
arr.sort((i, j) => {
	return i < j
});
console.log(arr); // 输出: [1, 1, 3, 4, 5, 9]

map

映射数组中的元素。

示例


let arr = [1, 2, 3];
let result = arr.map(x => x * 2);
console.log(result); // 输出: [2, 4, 6]

copy

复制数组中的元素到另一个数组。

示例


let src = [3, 43, 15, 65, 2];
let dest = src.copy();
console.log(dest); // 输出: [3, 43, 15, 65, 2]

delete

删除数组中指定索引的元素。

示例


let arr = [1, 2, 3, 4, 5];
arr.delete(2);
console.log(arr); // 输出: [1, 2, 4, 5]

includes

检查数组是否包含指定元素。

示例


let arr = [1, 2, 3];
let result = arr.includes(2);
console.log(result); // 输出: true

result = arr.includes(4);
console.log(result); // 输出: false

some

用于测试数组中的某些元素是否满足提供的条件(通过回调函数的测试)。只要数组中至少有一个元素满足条件,some() 方法就会返回true;如果没有任何元素满足条件,则返回false

用法

array.some(callback(element, index, array));

参数说明

  • element:当前正在处理的数组元素。
  • index(可选):当前元素的索引。
  • array(可选):被遍历的数组本身。

示例

// 示例1:检查数组中是否有大于 10 的数
const numbers = [5, 8, 12, 1, 4];
const hasLargeNumber = numbers.some(number => number > 10);
console.log(hasLargeNumber);  // 输出: true (因为12大于10)

// 示例2:检查对象数组中是否有某个属性的值为 true
const users = [
	{id: 1, active: false},
	{id: 2, active: true},
	{id: 3, active: false}
];
const hasActiveUser = users.some(user => user.active === true);
console.log(hasActiveUser);  // 输出: true (因为有一个用户active为true)
// 或者使用显式函数:
const hasActiveUser1 = users.some((user, index, array) => {
	return user.active === true;
});
console.log(hasActiveUser1); // 输出: true (因为有一个用户active为true)

reverse

反转数组中的元素。

示例


let arr = [1, 2, 3];
arr.reverse();
console.log(arr); // 输出: [3, 2, 1]

unique

移除数组中的重复元素。

示例


let arr = [1, 2, 2, 3, 3, 3];
arr.unique();
console.log(arr); // 输出: [1, 2, 3]
更新时间 9/24/2024, 7:07:12 PM