作者:DSSDD | 来源:互联网 | 2024-10-20 10:26
假设我有一个函数,参数是一个数组,如何重载函数来保证返回的值也是数组中的每个值的类型?
如:
1
| A(['a', 1, [1]]) // 返回 ['aa', 11, [1, 1]](只是举个例子) |
我知道如果参数中的类型是同一种类型则比较好写,如:
1
| function A(arr: T[]): T[] {} |
或者
1
| function A(arr: Array): Array {} |
即可。但是没有想明白如果参数数组中的类型是任意的该如何写?
function A(arr: [string, number, [number]]) {
return ["a", 1, [1]] as typeof arr
}
这样吗?