1. 程式人生 > >js數值進制互轉

js數值進制互轉

允許 console 第一個字符 tostring 二進制轉十進制 uil radi word radix

十進制轉換為二進制:

var num = 100;
console.log(num.toString(2));

toString()方法可把一個 Number 對象轉換為一個字符串,並返回結果。

語法

NumberObject.toString(radix);

其中,radix為可選。規定表示數字的基數,使 2 ~ 36 之間的整數。若省略該參數,則使用基數 10。但是要註意,如果該參數是 10 以外的其他值,則 ECMAScript 標準允許實現返回任意值。

返回值

數字的字符串。例如,當 radix 為 2 時,NumberObject 會被轉換為二進制值表示的字符串。

拋出

當調用該方法的對象不是 Number 時拋出 TypeError 異常。

二進制轉十進制:

var num = 1100100;
console.log(parseInt(num,2));

parseInt() 函數可解析一個字符串,並返回一個整數。

語法

parseInt(string, radix);

其中,string為必需。要被解析的字符串。radix為可選。表示要解析的數字的基數。該值介於 2 ~ 36 之間。如果省略該參數或其值為 0,則數字將以 10 為基礎來解析。如果它以 “0x” 或 “0X” 開頭,將以 16 為基數。如果該參數小於 2 或者大於 36,則parseInt() 將返回 NaN。

返回值

返回解析後的數字。

說明

當參數 radix 的值為 0,或沒有設置該參數時,parseInt() 會根據 string 來判斷數字的基數。
舉例,如果 string 以 "0x" 開頭,parseInt() 會把 string 的其余部分解析為十六進制的整數。如果 string 以 0 開頭,那麽 ECMAScript v3 允許 parseInt() 的一個實現把其後的字符解析為八進制或十六進制的數字。如果 string 以 1 ~ 9 的數字開頭,parseInt() 將把它解析為十進制的整數。

提示和註釋

註釋:只有字符串中的第一個數字會被返回。
註釋:開頭和結尾的空格是允許的。
提示:如果字符串的第一個字符不能被轉換為數字,那麽 parseFloat() 會返回 NaN。

parseInt(num,8);   //八進制轉十進制
parseInt(num,16);   //十六進制轉十進制
parseInt(num).toString(8)  //十進制轉八進制
parseInt(num).toString(16)   //十進制轉十六進制
parseInt(num,2).toString(8)   //二進制轉八進制
parseInt(num,2).toString(16)  //二進制轉十六進制
parseInt(num,8).toString(2)   //八進制轉二進制
parseInt(num,8).toString(16)  //八進制轉十六進制
parseInt(num,16).toString(2)  //十六進制轉二進制
parseInt(num,16).toString(8)  //十六進制轉八進制

js數值進制互轉