我有一个片段,将一个字符串与一个字符进行比较,TSLint抱怨所有事情:
版本1:
checkSomething(myString: string): boolean {
let myBool = false;
if (myString === '3') {
myBool = true;
}
return myBool;
}
使用此代码,由于比较将字符串与char(字符类型在TypeScript中不存在)进行比较,因此比较始终被评估为false
版本2:
checkSomething(myString: string): boolean {
let myBool = false;
if (myString == '3') {
myBool = true;
}
return myBool;
}
当myString
设置为"3"
时,此比较的评估结果为true,但TSLint抱怨出现了双重相等的情况:[tslint] == should be === (triple-equals)
。
版本3:
checkSomething(myString: string): boolean {
let myBool = false;
if (myString === "3") {
myBool = true;
}
return myBool;
}
当myString设置为"3"
时,此比较评估为true,但是TSLint抱怨双引号:[tslint] " should be ' (quotemark)
。
在这种情况下,应避免TSLint错误的正确方法是什么?