Typescript字符串相等检查不起作用

时间:2018-05-24 06:56:36

标签: typescript

我正在使用Angular 5.

在我的组件中,我检查值是否等于" DATE"。

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 个答案:

答案 0 :(得分:2)

这是因为你的return语句return el.dataType === "DATE";从array.some函数而不是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;
}