You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TypeScript中如何创建强类型数组的数组?编译报错求解答

问题分析与解决

1. 语法错误修复

你第一行代码里的字符串转义在部分环境下可能触发解析异常,建议改用双引号包裹字符串(无需转义内部单引号):

let arr: Array<[string, number]> = [["dad's adidas", 123], ["moms gucci", 47]]

或者使用模板字符串:

let arr: Array<[string, number]> = [[`dad's adidas`, 123], [`moms gucci`, 47]]

你的类型定义Array<[string, number]>是正确的,确实能约束数组元素为[string, number]格式的元组。

2. 循环逻辑错误修复

内层循环的终止条件写错了——你把j < arr[i].length误写成了i < arr[i].length,这会导致内层循环无限执行(i的值不会随j递增而变化)。修正后代码如下:

let arr: Array<[string, number]> = [["dad's adidas", 123], ["moms gucci", 47]]

for (let i = 0; i < arr.length; i++) {
    for (let j = 0; j < arr[i].length; j++) {
        console.log(arr[i][j])
    }
    console.log('\n')
}

3. 可选优化

你也可以用更简洁的迭代语法替代传统for循环:

arr.forEach(item => {
    item.forEach(elem => console.log(elem));
    console.log('\n');
});

内容的提问来源于stack exchange,提问作者Kouler

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 02:37:17