Typescript - 返回一个空数组而不声明局部变量

时间:2016-08-05 16:08:11

标签: typescript

我有一段看起来像这样的代码:

let emptyArray: string[]
    if (context == null) 
        return emptyArray

没有办法做到这一点:

    if (context == null) 
        return new string[]

3 个答案:

答案 0 :(得分:4)

您还可以键入断言返回的内容,以便编译器知道您返回string[]而不仅仅是数组。如果您不想在其他地方定义它。

if (context == null) 
    return [] as string[];

当然,对于任何类型的数组,空数组始终是有效值。

答案 1 :(得分:3)

它并不完全清楚你想要什么,因为没有上下文,例如谁返回空数组以及谁得到这个结果,但它很容易做到:

function fn(context: any): string[] {
    if (context == null) {
        return [];
    }
    ...
}

答案 2 :(得分:2)

也许我不理解你的问题,但在我的编辑中这对我来说似乎是有效的打字稿:

getValue(context): Array<String> {
    if(context==null) {
      return [];
    }
}