【发布时间】:2021-06-29 22:47:25
【问题描述】:
我很难理解如何在 Typescript 中使用 variadic tuple types。我试图通读文档,以及 GitHub 上的一些问题,但示例总是比“超级基本”有点奇怪,所以我想知道是否有人可以帮我输入几个“超级基本”,这样我就可以也许用那些来“得到它”。
假设我们有这些函数:
function wrap(...items) {
return items.map(item => ({ value: item }))
}
function wrapArray(items) {
return items.map(item => ({ value: item }))
}
function unwrap(...items) {
return items.map(item => item.value)
}
function unwrapArray(items) {
return items.map(item => item.value)
}
我怎样才能输入这些,以便例如以下内容可以按类型工作?
const items = [{ value: 4 }, { value: 'foo' }]
const [num, str] = unwrap(...items)
console.log(num.toFixed(2))
console.log(str.charAt(0))
这是一个包含功能的游乐场,每个功能都有一个“测试”。他们使用的是非可变类型,这当然不太有效,而且我不明白如何编写它们以便它们确实工作:
TypeScript Playground
【问题讨论】:
标签: typescript generics variadic-functions