es6这种写法如何使用typescript呢?

比如

function(...args){
    return 1
}

这个函数里的参数...args如何加上类型呢?

阅读 2k
1 个回答

下面的示例,用 e# 和 err 表示错误的示例,x# 是正确的示例

// 任意类型
function a(...args: any[]) {
    let x1 = args[0];
}

// 所有参数都是字符串
function b(...args: string[]) {
    let x: string = args[0];
    let err: number = args[1];    // 应该用 string
}

// 前几个参数的类型可以确定,且参数个数确定,用解构类型定义
function c(...args: [string, number, any[]]) {
    let x1: string = args[0];
    let x2: number = args[1];
    let x3: Date = args[2];    // 应该用 any[]
}

// 参数个数不定,后面的参数类型不定,解构类型
function d(...args: [string, number, ...any[]]) {
    let x1: string = args[0];
    let x2: number = args[1];
    let x3: Date = args[2];

    let e1: number = args[0];    // 应该 string
    let e2: string = args[1];    // 应该 number
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题