MST

星途 面试题库

面试题:TypeScript中Array、Tuple与ArrayLike的使用场景区别

请简要阐述在TypeScript中,Array、Tuple与ArrayLike分别适用于哪些场景,并各举一个简单代码示例说明。
21.8万 热度难度
前端开发TypeScript

知识考点

AI 面试

面试题答案

一键面试

Array

适用于需要存储相同类型元素的动态长度集合场景,例如存储一组数字。

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

Tuple

适用于需要存储固定数量且类型明确的元素集合场景,例如表示一个二维坐标。

let point: [number, number] = [10, 20];

ArrayLike

适用于表示类似数组的对象,但不一定是真正的数组,如DOM元素列表。常用于与JavaScript原生API交互,这些API返回的对象形似数组但并非数组类型。

function sumArrayLike(arrLike: ArrayLike<number>): number {
    let sum = 0;
    for (let i = 0; i < arrLike.length; i++) {
        sum += arrLike[i];
    }
    return sum;
}
let arrLike: { length: number; [index: number]: number } = { length: 3, 0: 1, 1: 2, 2: 3 };
console.log(sumArrayLike(arrLike));