略過主要內容

no-unsafe-unary-minus

需要一元否定來取得一個數字。

💭

此規則需要 類型資訊 才能執行。

TypeScript 沒有防止你在非數字前放負號

const s = 'hello';
const x = -s; // x is NaN

此規則將一元-運算子限制至number | bigint

.eslintrc.cjs
module.exports = {
"rules": {
"@typescript-eslint/no-unsafe-unary-minus": "error"
}
};

在試用檢視器中嘗試此規則 ↗

範例

declare const a: string;
-a;

declare const b: {};
-b;
在試用檢視器中開啟

選項

此規則無法組態。

何時不用它

經過型別檢查的 linter 規則比傳統的 linter 規則更強大,但同時也需要設定 經過型別檢查的 linting。如果在啟用經過型別檢查的規則後,你的效能出現下降,請參閱 效能疑難排解

資源