TSLint помечается как ошибка при сравнении строки с символом - PullRequest
0 голосов
/ 27 сентября 2018

У меня есть фрагмент, который сравнивает строку с символом, и TSLint жалуется на все:

Версия 1:

checkSomething(myString: string): boolean {
  let myBool = false;
  if (myString === '3') {
    myBool = true;
  }
  return myBool;
}

С этим кодом сравнение всегда оценивается как ложное, поскольку он сравнивает строку с символом (тип символа не существует в TypeScript)


Версия 2:

checkSomething(myString: string): boolean {
  let myBool = false;
  if (myString == '3') {
    myBool = true;
  }
  return myBool;
}

Это сравнение оценивается как true, когда myStringимеет значение "3", но TSLint жалуется на двойное равенство: [tslint] == should be === (triple-equals).


Версия 3:

checkSomething(myString: string): boolean {
  let myBool = false;
  if (myString === "3") {
    myBool = true;
  }
  return myBool;
}

Это сравнение оценивается как true, когда myString имеет значениеустановить "3", но TSLint жалуется на двойные кавычки: [tslint] " should be ' (quotemark).

Каким должен быть правильный способ избежать ошибок в TSLint в этом случае?

...