SOURCE

let Stack = (function() {
  const items = new WeakMap();
  class Stack {
    constructor() {
      items.set(this, []);
    }
    push(el) {
      let s = items.get(this);
      s.push(el)
    }
    pop() {
      let s = items.get(this) return s.pop();
    }
    peek() {
      let s = items.get(this) return s[s.length - 1]
    }
    isEmpty() {
      let s = items.get(this) return s.length == 0;
    }
    size() {
      let s = items.get(this) return s.length;
    }
    clear() {
      let s = items.get(this) s = [];
    }
    print() {
      let s = items.get(this) console.log(s.toString());
    }
  }

  return Stack;
})();

function divdeBy2(decNumber, base) {
  var remStack = new Stack(),
  rem,
  binaryString = '',
  digits = '0123456789ABCDEF';
  while (decNumber > 0) {
    rem = Math.floor(decNumber % base);
    remStack.push(rem);
    decNumber = Math.floor(decNumber / base);
  }

  while (!remStack.isEmpty()) {
    // binaryString+=remStack.pop().toString();
    binaryString += digits[remStack.pop()];
    // console.log(binaryString);
  }
  console.log(binaryString);
  return binaryString;
}

divdeBy2(100, 16)
console 命令行工具 X clear

                    
>
console