0
一些先前SO問題描述了從&&
推斷出的類型是最後一個表達式的類型的類型。打字稿&&操作者不產生第二操作數
- TypeScript does not detect union type with an && operator
- Why does the && operator produce the type of the second operand
但打字稿2.4.2下面的代碼錯誤報告:
function isQuerySql(sql: string): boolean {
return sql && _.trimStart(sql).toLowerCase().startsWith('select');
}
錯誤TS2322:類型「布爾| 「」'不能分配給'boolean'類型。 類型「‘’」是不能分配給輸入「布爾」。
我無法弄清楚什麼是錯的。 _.trimStart(sql).toLowerCase().startsWith('select')
被推斷爲布爾值。哪裏""
來?