追記
@otiai10 (30).toString(2) ではだめですかね?
— Takuo Kihira (@tkihira) 2014, 7月 4
いやーインターネッツはやっぱり素晴らしい(白目
以下原文
いやーもっといい方法あるっぽいけど
function decimal2binary(dec, padOrder) { var base = 2; var pool = []; var order = 0; while ((dec - Math.pow(base, order + 1) > 0)) { order++; } for (var i = order; i > -1; i--) { if (dec - Math.pow(base, i) < 0) { pool.push(0); } else { dec = dec - Math.pow(base, i); pool.push(1); } } order++; var count = 0; while (count < padOrder - order) { pool.unshift(0); count++; } return pool.join(""); } console.log(decimal2binary(35)); console.log(decimal2binary(9)); console.log(decimal2binary(9, 6));
結果
% node decimal2binary.js 100011 1001 001001 %