以下重载有什么问题吗?进入不到第二个签名
type Filter = {
(array: number[], f: (item: number) => boolean): number[]
(array: string[], f: (item: string) => boolean): string[]
}
let filter: Filter = (array, f) => {
let result = []
for(let i = 0; i < array.length; i++) {
let item = array[i]
if(f(item)) {
result.push(item)
}
}
console.log(result);
return result
}
filter([1, 2, 3, 4, 5], _ => _ < 6)
filter(['ab', 'bc', 'cd'], _ => _.startsWith('b'))