//栈结构
class Stack {
container =[];//进栈enter(element){
this.container.unshift(element)}//出栈leave(element){return this.container.shift(element)}size(){return this.container.length
}value(){return this.container
}}
let num =58;
console.log(num.toString(2))//111010// 十进制转二进制,注意此处的栈是从头部塞入,输出的顺序才会符合要求
Number.prototype.change = function change(){
let sk = new Stack;
let yu = this.valueOf()if(yu ===0)return'0'while(yu >0){
sk.enter(yu %2)
yu = Math.floor(yu /2)}return sk.value().join('')}
console.log(num.change())//111010