JavaScript 進位制轉換

admin發表於2019-12-18

本文將結合例項程式碼介紹一下JavaScript如何實現進位制轉換。

關於JavaScript各種進位制可以參閱二進位制、八進位制與十六進位制一章節。

實現轉換的方式比較靈活簡單,下面分別做一下介紹。

一.toString()方法:

通過此方法可以將數字轉換為各種進位制。

語法結構:

[JavaScript] 純文字檢視 複製程式碼
numberObject.toString([radix])

方法解析:

(1).numberObject:將要進行轉換的數字或者數字物件。

(2).radix:可選,目標進位制(預設10進位制),也就是將數字轉換為何種進位制,值介於2-36之間。

程式碼例項:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
console.log((10).toString(2))
console.log((10).toString(8))
console.log((10).toString(16))

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201912/18/115918ctr6n0uq3n84ps0l.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

程式碼分析如下:

(1).數字用小括號包裹是為了防止把後面的點當做數字小數點處理。

(2).列印結果是對應進位制的字串形式,沒有相關進位制的標識,比如十六進位制以0x起始。

當然也可以將非十進位制數字轉換為對應的進位制,程式碼例項如下:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
console.log((0xa).toString(2))

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201912/18/115947j9wnj5cb7mjcn5x9.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

上述程式碼將16進位制轉換為二進位制,其他進位制轉換不再演示。

二.parseInt()方法:

此方法可以字串數字數字轉換為十進位制,結果只能是十進位制。

語法結構:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
parseInt(numString [,radix])

引數解析:

(1).numString:數字字串或者數字。

(2).radix:可選,規定numString是何種進位制,值介於2-36之間。

程式碼例項:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
console.log(parseInt(0x2c))
console.log(parseInt('0x2c'))
console.log(parseInt('0x2c',16))

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201912/18/120034zj11et1xb2a7bdbj.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

程式碼分析如下:

(1).第一個引數可以數字,也可以是數字字串。

(2).如果引數有明確的進位制資訊,第二個引數可以省略(最好帶著)。

(3).上述程式碼是將引數作為16進位制數字處理,轉換結果是10進位制。

[JavaScript] 純文字檢視 複製程式碼執行程式碼
console.log(parseInt('cc'))
console.log(parseInt('cc',16))

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201912/18/120057bxdttt78l48v8u89.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

如果引數沒有帶有明確的進位制進位制資訊,那麼要通過第二個引數註明。

相關文章