//栈的全部代码 function Stack() { var items=[]; this.push=function (element) { items.push(element); }; this.pop=function () { return items.pop(); }; this.peek=function () { return items[items.length-1];//返回栈顶元素 }; this.isEmpty=function () { return items.length==0; }; this.size=function () { return items.length; }; this.clear=function () { items=[]; }; this.print=function () { console.log(items.toString()); }; } //进制转换 function baseConverter(decNumber,base) { var remStack=new Stack(), rem, baseString='', digits='0123456789ABCDEF'; while (decNumber>0){ rem=Math.floor(decNumber%base); remStack.push(rem); decNumber=Math.floor(decNumber/base); } while (!remStack.isEmpty()){ baseString+=digits[remStack.pop()]; } return baseString; } console.log(baseConverter(100345,16));
转载于:https://my.oschina.net/u/3161974/blog/874567