no-bitwise
不允許位元運算子
在 JavaScript 中使用位元運算子非常罕見,而且通常 &
或 |
只是錯誤輸入成 &&
或 ||
,這會導致非預期的行為。
const x = y | z;
規則詳細資訊
此規則不允許位元運算子。
此規則的錯誤程式碼範例
在遊樂場開啟
/*eslint no-bitwise: "error"*/
let x = ;
const x1 = ;
const x2 = ;
const x3 = ;
const x4 = ;
const x5 = ;
const x6 = ;
;
;
;
;
;
;
此規則的正確程式碼範例
在遊樂場開啟
/*eslint no-bitwise: "error"*/
let x = y || z;
const x1 = y && z;
const x2 = y > z;
const x3 = y < z;
x += y;
選項
此規則具有物件選項
"allow"
:允許使用位元運算子清單作為例外。"int32Hint"
:允許在|0
模式中使用位元 OR 進行型別轉換。
allow
此規則搭配 { "allow": ["~"] }
選項的正確程式碼範例
在遊樂場開啟
/*eslint no-bitwise: ["error", { "allow": ["~"] }] */
~[1,2,3].indexOf(1) === -1;
int32Hint
此規則搭配 { "int32Hint": true }
選項的正確程式碼範例
在遊樂場開啟
/*eslint no-bitwise: ["error", { "int32Hint": true }] */
const b = a|0;
版本
此規則在 ESLint v0.0.2 中引入。