JavaScript栈,算法小练习:十进制转二进制

//创建一个栈的数据类型,利用栈的先进后出的特点实现
function Stack (){
    var items = [];
    //入栈
    this.StackPush = function (e){
        items.push(e);
    }
    //出栈
    this.StackPop = function(){
        return items.pop();
    }
    //输出
    this.toString = function (){
        let str = "";
        for (let x of items){
            str = str+x;
        }
        console.log(str);
    }
    //判断是否为空
    this.isEmpty=function(){
        return items.length;
    }
}

function fn (num){
    var myStack = new Stack();
    var rem ;
    while(num > 0){
        rem = Math.floor(num%2);
        myStack.StackPush(rem);
        num = Math.floor(num/2);
    }
    if(myStack){
        myStack.toString();
    }
}
//例子
fn(55);

你可能感兴趣的:(前端)