首页 > 解决方案 > 如何优化 Typescript 中的 if 语句

问题描述

声明两个变量后param01param02我继续检查传入event.pathParameters是否不是undefined

      let param01, param02;

      if (event.pathParameters!=undefined) {
        if (event.pathParameters.param01!=undefined) {
          param01 = event.pathParameters.param01;
        }
        if (event.pathParameters.param02!=undefined) {
          param02 = event.pathParameters.param02;
        }
      }    

虽然它工作正常,但它需要 10 行代码。我想知道在 Typescript 中是否有更短、更优雅的方法来完成它

标签: javascripttypescriptaws-lambda

解决方案


你可以尝试这样的事情:

const param01 = event.pathParameters && event.pathParameters.param01 || null;
const param02 = event.pathParameters && event.pathParameters.param02 || null;

或仅使用一行:

const { param01, param02 } = event.pathParameters || {};

如果您的环境允许,您还可以使用可选链接

const param01 = event.pathParameters?.param01; // value or undefined
const param02 = event.pathParameters?.param02; // value or undefined

推荐阅读