2014-09-30 52 views
0

有可能將二進制轉換本爲十進制:如何將十進制轉換爲二進制的JS?

var binary = "110"; 
 
var int = parseInt(binary, 2); 
 
document.getElementById("results").innerHTML = int;
<div id="results"></div>

可是,我該怎麼做相反的操作:INT轉換爲二進制?

+0

這必須是一個DUP,但'二進制= int.toString(2);'。 – Teemu 2014-09-30 18:12:05

+0

忘記說吧。我也轉換負數。方法,你建議給出「-110」作爲結果,當我試圖將-6轉換爲二進制時 – 2014-09-30 18:15:07

+0

嗯,這並不完美,你必須知道轉換負值時的字節長度。 [這是一個dup](http://stackoverflow.com/questions/9939760/how-do-i-convert-an-integer-to-binary-in-javascript)。接受的答案是不值得的,但[Annan's anwer](http://stackoverflow.com/a/24153275/1169519V)似乎是你正在尋找的。 – Teemu 2014-09-30 18:25:52

回答

0

var x = 6; console.log(x.toString(2));

0

您可以試用Unsigned Right Shift Operator

>>> 0運營商對號碼沒有影響,但給你的二進制等值。

您可以運行下面的代碼片段(如果使用-6進行嘗試,輸出應該是11111111111111111111111111111010)。

//Here you can test it directly 
var number = -6; 

alert((number >>> 0).toString(2)); 

//Or you can do it with a function 
 
function dec2Bin(dec) { 
 
    return (dec >>> 0).toString(2); 
 
} 
 

 
alert(dec2Bin(-6));

相關問題