&、|、~都是位操作符,
&&是邏輯與運算符(假前真後)
我們這就不多說,直接看例子:a&&b,若a、b爲真,則a&&b,否則就爲假。
運算方法:
只要“&&”前面是false,無論“&&”後面是true還是false,結果都將返“&&”前面的值;
只要“&&”前面是true,無論“&&”後面是true還是false,結果都將返“&&”後面的值;
而&&、|、~|都是邏輯操作
&&是邏輯與運算符(真前假後)
我們這就不多說,直接看例子:a&&b,若a、b爲真,則a&&b,否則就爲假。
運算方法:
只要“&&”前面是false,無論“&&”後面是true還是false,結果都將返“&&”前面的值;
只要“&&”前面是true,無論“&&”後面是true還是false,結果都將返“&&”後面的值;
&是按位與操作
參加運算的兩個數據按照二進制位進行“與”運算,如果兩個相應的二進制位都爲1,那該位的結果值就是1,否則爲0,即0&0=0,0&1=0,1&1=1,1&0=0。
比如:3&5並不等於8,應該按位與,00000011&00000001=00000001。
運算方法:
兩個數值的個位分別相與,同時爲1才得1,只要一個爲0就爲0。
|是按位或操作
參加運算的兩個數據按照二進制位進行“或”運算,如果兩個相應的二進制位中只要有一個爲1,則該位結果就是1,即爲0|1=1、1|1=1、1|0=1、0|0=0。
總 運算方法:
兩個位只要有一個爲1,那麼結果都爲1。否則就爲0
|運算符還能進行取整運算:
console.log(2.23 | 0)//2