typescript数组array和map

在 TypeScript 中,数组(Array)和 Map 都是用于存储多个值的数据结构。它们在使用上有一些区别,下面我们将分别介绍 TypeScript 中的数组和 Map,并给出相应的示例代码。

数组(Array)

数组是一种有序的数据集合,可以存储多个元素,并通过索引来访问这些元素。在 TypeScript 中,数组的类型可以使用数组类型标记 [] 或泛型 Array<T> 来定义。

声明数组类型

// 使用类型标记 [] 来定义数组
let numbers: number[] = [1, 2, 3, 4, 5];

// 使用泛型 Array<T> 来定义数组
let fruits: Array<string> = ["apple", "banana", "orange"];

数组操作

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

// 访问数组元素
console.log(numbers[0]); // Output: 1

// 修改数组元素
numbers[2] = 30;
console.log(numbers); // Output: [1, 2, 30, 4, 5]

// 添加元素到数组末尾
numbers.push(6);
console.log(numbers); // Output: [1, 2, 30, 4, 5, 6]

// 删除数组末尾的元素
numbers.pop();
console.log(numbers); // Output: [1, 2, 30, 4, 5]

Map

Map 是一种键值对的集合,它可以存储多个键值对,并且可以根据键来获取对应的值。在 TypeScript 中,Map 的类型可以使用 Map<K, V> 泛型来定义,其中 K 是键的类型,V 是值的类型。

声明 Map 类型

let myMap: Map<string, number> = new Map();

Map 操作

let myMap: Map<string, number> = new Map();

// 添加键值对
myMap.set("apple", 10);
myMap.set("banana", 20);
myMap.set("orange", 30);

// 获取键对应的值
console.log(myMap.get("apple")); // Output: 10

// 判断键是否存在
console.log(myMap.has("banana")); // Output: true

// 获取 Map 中的所有键
console.log(myMap.keys()); // Output: MapIterator { 'apple', 'banana', 'orange' }

// 获取 Map 中的所有值
console.log(myMap.values()); // Output: MapIterator { 10, 20, 30 }

// 删除键值对
myMap.delete("orange");
console.log(myMap); // Output: Map { 'apple' => 10, 'banana' => 20 }
在上述示例中,我们创建了一个 myMap 的 Map 对象,并添加了三个键值对。我们可以使用 get 方法来获取键对应的值,使用 has 方法判断键是否存在,使用 keys 和 values 方法来获取 Map 中的所有键和值,并使用 delete 方法删除键值对。

网友评论0