返回

TypeScript:检查变量是否已初始化

发布时间:2022-05-13 03:35:17 200

我的一些功能如下:

const myFunction = (columns: any, data: any) => {
  let label: string;
  let value: number;

  //some section where it assigns label and value
  for (let index = 0; index < columns.length; index++) {
        const column: string = columns[index].fieldName;
        const datapoint: string = data[index].formattedValue;

        if (column.includes("KeyPointLabel")) {
            label = datapoint;
        }
        if (column.includes("KeyPointValue")) {
            value = Number(datapoint);
        }
    }

  //if the above section worked as expected, they should have a value.
  //so if it doesn't, throw an error.
  if (typeof label === undefined) throw new Error() <--- ERROR HERE!!

  return {label, value}
}

我想检查一下labelvalue.我已经看了其他几条建议这样做的线索if (typeof label === undefined)if (label == null)但任何引用labelvalue给我“分配前使用”错误。

指定的区域labelvalue只是一个for循环,通过columns查看它是否有包含KeyPointLabel,分配label = data[same index as column],同样适用于value.形式columnsdata这不是我能控制的。

从技术上讲,我可以做到

  let label: string = "";
  let value: number = -1;

  ...

  if(label === "" || value < 0) throw new Error();

  return { label, value }

因为我的value永远不会有负数和label永远不要成为空字符串,但我想知道是否有更好的解决方案。

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(2)
按点赞数排序
用户头像
相关帖子
下一篇
google.script.run 没有触发下一个函数 2022-05-13 02:57:50