【问题标题】:how to handle the type from optional in typescript?如何处理打字稿中可选的类型?
【发布时间】:2021-05-26 02:16:39
【问题描述】:

在我的情况下,如何设置 localparaB 的类型?我需要遍历可选参数

function func(paraB?:string[]): string[]
{
  const localparaB = paraB.map((n) => `${n}-vvv`)
  return localparaB 
}
console.log(func(['a', 'b']))

【问题讨论】:

  • 当 paraB 未定义时你打算做什么

标签: typescript typescript-typings


【解决方案1】:

你可以使用optional chaining operatornullish coalescing operator,比如:

function func(paraB?:string[]): string[] {
  const localparaB = paraB?.map((n) => `${n}-vvv`) ?? []

  return localparaB
}

console.log(func(['a', 'b']))

【讨论】:

    【解决方案2】:

    您可以使用 Typescrip gaurds 概念,即添加 if 子句作为 gaurd:

    function func(paraB?:string[]): string[]
    {
        if (paraB) {
            const localparaB = paraB.map((n) => `${n}-vvv`)
            return localparaB
        }
    }
    console.log(func(['a', 'b']))
    

    【讨论】:

      猜你喜欢
      • 2018-10-17
      • 1970-01-01
      • 2017-01-19
      • 1970-01-01
      • 1970-01-01
      • 2021-12-30
      • 2018-10-26
      • 2020-09-14
      • 1970-01-01
      相关资源
      最近更新 更多