0

アプリケーションに次の JavaScript コードがあります。

var boo = function(inputStr) {
    if (!inputStr || inputStr === "") {
        throw new Error("Input is null or empty.");
    }
    return new Aftamat(inputStr);
};

そして Resharper は、それinputStr === ""は常にfalse. なんで?これはResharperのバグですか?

4

2 に答える 2

2

文字列が空の場合、それは一種のfalseです...したがって、!inputStrtrueを返し、実際にinputStr === ""は文字列が空の場合はチェックされません

于 2013-03-05T07:53:42.587 に答える
1

おそらく、ifinputStr === ""が true の場合、then!inputStrもtrue になるためですが、true の場合!inputStrinputStr === ""チェックされませんでした。

つまり、そのコードは、テストが真でなければならない状況でのみ到達します。

于 2013-03-05T07:56:14.050 に答える