Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/414.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何计算TypeScript中嵌套数组(3级)中的元素数?_Javascript_Typescript - Fatal编程技术网

Javascript 如何计算TypeScript中嵌套数组(3级)中的元素数?

Javascript 如何计算TypeScript中嵌套数组(3级)中的元素数?,javascript,typescript,Javascript,Typescript,我有三层嵌套数组。我想知道有多少详细信息属于汽车 类似这样:cars.flat(t=>t.items)。flat(t=>t.details)。长度使用减少: export interface Cars { items: ItemsSummary[]; } export interface ItemsSummary{ details: DetailsSummary[]; } export interface DetailsSummary{ name: string; }

我有三层嵌套数组。我想知道有多少
详细信息
属于
汽车

类似这样:
cars.flat(t=>t.items)。flat(t=>t.details)。长度
使用
减少

export interface Cars {
    items: ItemsSummary[];
}

export interface ItemsSummary{
    details: DetailsSummary[];
}

export interface DetailsSummary{
    name: string;
}

您可以使用
reduce
来汇总长度:

let totalDetails = cars.reduce((total, car) => {
    return total += car.items.reduce((total2, item) => {
        return total2 += item.details.length;
    }, 0);
}, 0);
cars.reduce((s, o) => s + o.items.reduce((ss, oo)=> ss+ oo.details.length, 0), 0)