2016-05-04 49 views
0

的Javascript分解爲十六進制

var dec = prompt("Enter a number"); 
 

 
if (dec != null && dec > 0) { 
 
\t var hex = dec.toString(16); 
 
\t alert(hex); 
 
} 
 
else { 
 
\t alert("number must be greater than 0"); 
 
}

我有以下代碼 ,當我輸入一個數字的提示它會提醒相同數量 例:I輸入256 提醒:256

+0

和?你的問題是什麼? – Whitefret

+0

OP想知道爲什麼它警告錯誤值@Whitefret – epascarello

+0

對不起,在審查中,沒有看到張貼的答案... – Whitefret

回答

2

prompt將返回string。首先將它轉換爲普通的number

var dec = +prompt("Enter a number"); 

if (dec != null && dec > 0) { 
    var hex = dec.toString(16); 
    alert(hex); 
} 
else { 
    alert("number must be greater than 0"); 
} 
+1

你說得對! ('+'):) – Rayon

1

試試這個

var dec = prompt("Enter a number"); 

if (dec != null && dec > 0) { 
    var hex = parseInt(dec,16); 
    alert(hex); 
} 
else { 
    alert("number must be greater than 0"); 
} 
+0

現有代碼有什麼問題? – Rayon

+0

沒有什麼只是將十進制字符串轉換爲數字。這是通過使用另一種方式可以將十進制轉換爲十六進制。 –