MST

星途 面试题库

面试题:TypeScript类型驱动开发的复杂类型技巧

假设有一个函数`getUserInfo`,它接受一个用户ID作为参数,返回用户信息。用户信息包含姓名、年龄和地址,地址又包含省份、城市和街道。请使用TypeScript的类型别名或接口定义相关类型,并编写函数签名。
33.4万 热度难度
前端开发TypeScript

知识考点

AI 面试

面试题答案

一键面试
  1. 使用接口定义类型
    // 定义地址接口
    interface Address {
        province: string;
        city: string;
        street: string;
    }
    // 定义用户信息接口
    interface UserInfo {
        name: string;
        age: number;
        address: Address;
    }
    // 函数签名
    function getUserInfo(userId: number): UserInfo;
    
  2. 使用类型别名定义类型
    // 定义地址类型别名
    type Address = {
        province: string;
        city: string;
        street: string;
    };
    // 定义用户信息类型别名
    type UserInfo = {
        name: string;
        age: number;
        address: Address;
    };
    // 函数签名
    function getUserInfo(userId: number): UserInfo;