1、進制之間的轉換(代碼實現)
思路:以十進制數做中間量,其餘進制之間互相轉換前先轉換成十進制。
複製代碼
1. 其餘進制轉換成十進制
> parseInt(非十進制數,第一個參數進制數)
此方法能夠將非十進制數字轉換成十進制數字
var num=111;
alert(parseInt(num,2)); // 7
複製代碼
2. 十進制轉換成其餘進制
> 十進制數.toString(要轉換成的進制)
此方法能夠將十進制數轉換成其餘任意的進制數
var num=9;
alert(num.toString(2)); // 二進制,111
alert(num.toString(8)); // 8進制,11
複製代碼
2、或運算(||)、與運算(&&)
> 用法一,表示判斷
表達式1 || 表達式2
兩個表達式中有一個爲true,總體返回true,不然返回false
表達式1 && 表達式2
兩個表達式必須都爲true,總體返回true,不然返回false
複製代碼
> 用法二,賦值(短路操做)
var val=表達式1 || 表達式2;
val會被賦值爲第一個爲true的表達式(數據類型也會賦給val),
若是全部的表達式都爲false,val會被賦值爲最後一個表達式(數據類型也會賦給val)
var val=表達式1 && 表達式2;
val會被賦值爲第一個爲false的表達式(數據類型也會賦給val),
若是全部的表達式都爲true,val會被賦值爲最後一個表達式(數據類型也會賦給val)
複製代碼
3、位運算
> 按位或(|)
計算方法:兩個數字轉換成二進制進行比較只有位值都爲0時才取0,不然取1
例如:14|15 (14 轉換成二進制 1110
15 轉換成二進制 1111
| 的結果 1111 ----》結果15)
複製代碼
> 按位與(&)
計算方法:兩個數字轉換成二進制進行比較只有位值都爲1時才取1,不然取0
例如:14&15 (14 二進制 1110
15 二進制 1111
& 的結果 1110 ----》結果14)
複製代碼
> 按位異或(^)
計算方法:兩個數字轉換成二進制進行比較只有位值不相等時才取1,不然取零
例如:14^15 (14 二進制 1110
15 二進制 1111
^ 的結果 0001 ----》結果1)
複製代碼
> 位運算NOT(~)
計算方法:數字求負,再減1
例如:~14 的結果是 -15複製代碼