MST

星途 面试题库

面试题:TypeScript中联合类型与交叉类型在函数参数中的应用

请编写一个TypeScript函数,该函数接受一个参数,这个参数可以是字符串或者数字类型(使用联合类型),函数内部根据参数类型进行不同的操作,如果是字符串则返回其长度,如果是数字则返回其平方。然后再编写另一个函数,接受一个同时具有字符串属性`name`和数字属性`age`的对象(使用交叉类型),并打印出`name`和`age`的值。请写出完整代码。
22.2万 热度难度
前端开发TypeScript

知识考点

AI 面试

面试题答案

一键面试
function handleValue(value: string | number): number {
    if (typeof value ==='string') {
        return value.length;
    } else {
        return value * value;
    }
}

function printInfo(person: { name: string } & { age: number }): void {
    console.log(`Name: ${person.name}, Age: ${person.age}`);
}

// 测试
console.log(handleValue('Hello')); 
console.log(handleValue(5)); 

const personInfo = { name: 'John', age: 30 };
printInfo(personInfo);