代码之家  ›  专栏  ›  技术社区  ›  xzk

typescript字符串相等性检查不起作用

  •  1
  • xzk  · 技术社区  · 6 年前

    我用的是角5。

    在我的组件中,我检查值是否等于“日期”。

    isDateColumn(columnName: string){
        this.configData.some((el) => {
          if (columnName == el.key.columnName){
            console.log("FOUND: " + el.dataType + " For " + columnName);
            return el.dataType === "DATE";
          }
        })
        return false;
      }
    

    在我的控制台中,我发现了如下内容:

    FOUND: DATE For CLIENT_START_DT

    但是这个函数仍然返回我 false .

    为什么会这样?

    1 回复  |  直到 6 年前
        1
  •  2
  •   Saksham Gupta    6 年前

    这是因为你的报税表 return el.dataType === "DATE"; 从数组返回。某些函数不是IsDateColumn函数。所以最后 return false; 在所有情况下执行。

    这项工作:

    isDateColumn(columnName: string){
    let found = false;
    this.configData.some((el) => {
      if (columnName == el.key.columnName && el.dataType === "DATE"){
        console.log("FOUND: " + el.dataType + " For " + columnName);
        found = true;
      }
    })
    return found;
    }