2013-04-09 3 views
-5

В C выход - это то, что я ожидаю. В Javascript результат не тот, который я ожидаю. В Javascript шестнадцатеричные петли десятичные не в шестнадцатеричном виде.
Как закодировать гексагон в Javascript?

C:

#include<stdio.h> 
int main(){ 
for(int i=0x1000;i<=0x109F;i++){ 
    printf("%x\n",i); 
} 
return 0; 
} 

Javascript:

<script type="text/javascript"> 
for(var i=0x1000;i<=0x109F;i++){ 
document.write(i+"<br>"); 
} 
</script> 
+0

A Количество хранится в виде числа, не имеет значения обозначения вы используете, чтобы указать его. Например, если вы сбросили '0x10' или' 020', вам угрожает одно и то же значение ('16'), и только значение сохраняется, нотация - это соглашение, которое упрощает угрозы для некоторых чисел в некоторых условиях. Вам нужно форматировать вывод, как это предлагал @Doorknob, и как вы это делали в C, используя 'printf («% x »)'. Не имеет значения, что вы указали 'i = 0x1000', причем' i = 4096' приведет к тому же выводу. – ZER0

+0

@ ZER0 Спасибо. Ваши комментарии помогут. –

ответ

3

Вы можете использовать toString метод:

document.write(i.toString(16)+"<br>"); //base 16 (hex) 
+0

Спасибо @Doorknob помогает. –

Смежные вопросы