gpt4 book ai didi

javascript - Typescript 将两种数据类型数组合并为一个

转载 作者:行者123 更新时间:2023-12-03 08:17:48 24 4
gpt4 key购买 nike

如何使用 concat 将两种类型的数组连接到一个数组中。如果我用两种数据类型初始化它,它可以正常工作,但是当我concat它时。 Typescript 抛出两种类型不兼容的错误。

const foo: string[] = ['hello', 'world'];
const bar: number[] = [1, 2];
const both: (string | number)[] = foo.concat(bar); // gets an error on bar

const other: (string | number)[] = ['hello', 'world', 2, 3]; // this works

最佳答案

我认为这与 Typescript 中 .concat() 的实现有关。它的实现是因为合并数组的类型预计是 foo 的类型。这就是它抛出错误的原因。

您可以从 Typescript Playground here 检查代码片段的错误选项卡了解更多相关信息。

如果你想让它起作用,你可以使用扩展运算符。应该可以正常工作。

const foo: string[] = ['hello', 'world'];
const bar: number[] = [1, 2];
const both: (string | number)[] = [...foo, ...bar];

关于javascript - Typescript 将两种数据类型数组合并为一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68814508/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com