// 函数重载声明
function handleArgs(...args: number[]): number;
function handleArgs(...args: string[]): string;
function handleArgs(...args: boolean[]): boolean;
// 函数实现
function handleArgs(...args: (number | string | boolean)[]): number | string | boolean {
if (args.every(arg => typeof arg === 'number')) {
return args.reduce((acc, num) => acc + num, 0);
} else if (args.every(arg => typeof arg ==='string')) {
return args.join('');
} else if (args.every(arg => typeof arg === 'boolean')) {
return args.every(Boolean);
}
throw new Error('参数类型不一致,无法处理');
}