Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Перевод из чисел в различные системы счисления (https://javascript.ru/forum/misc/63362-perevod-iz-chisel-v-razlichnye-sistemy-schisleniya.html)

AndreyMG 02.06.2016 20:38

Перевод из чисел в различные системы счисления
 
Добрый день!

Имеется следующий вопрос!
Есть число в 10-ной системе счисления, его нужно перевести в 16-ричную.
Делаю это так:
var x = 11;
x = x.toString(16);

В ответе получу значение 'b'.
Подскажите как придать полученному числу определённый формат?

А именно необходимо чтобы в числе было 4 разряда, независимо от значения. Т.е. если я введу число 11 то на выходе хочу получить 000b, если введу число 32767 то хочу получить число 7fff.

Спасибо!

AndreyMG 02.06.2016 20:58

В голову пришел только такой дурацкий способ:

var op = {name: name, address: "0000"};

var number = m_Operands.length;
var address = number.toString(16).toLowerCase()  ;

op.address = op.address.split("");

op.address[3] = address[0] != undefined? address[0].toString() : "0";
op.address[2] = address[1] != undefined? address[1].toString() : "0";
op.address[1] = address[2] != undefined? address[2].toString() : "0";
op.address[0] = address[3] != undefined? address[3].toString() : "0";

op.address = op.address[0].concat(op.address[1], op.address[2], op.address[3]);

Если возникнут идее лучше - отпишитесь пожалуйста!

рони 02.06.2016 21:00

AndreyMG,
http://javascript.ru/forum/jquery/59...tml#post417662

ruslan_mart 02.06.2016 21:13

function convert(n) {
    n = n.toString(16);
    return '0'.repeat(Math.max(4 - n.length, 0)) + n;
};

alert( convert(11) );
alert( convert(24) );
alert( convert(32767) );

AndreyMG 02.06.2016 21:48

Именно то что искал! Спасибо!


Часовой пояс GMT +3, время: 10:09.