一直被js中的push和unshift困惑,今天终于明白了
push是在数组末尾添加值,而unshift是在数组头部添加值
下面是十进制转二进制的代码,分别用push和unshift实现
首先是unshift实现:
function dec2bin(n){
// n/2……,直到商为0,然后将所有余数倒过来排序
var arr=[];
while(n!=0){
arr.unshift(n%2);
n=Math.floor(n/2);
}
return arr.join("");
}
然后是push的实现:
function dec2bin(n){
// n/2……,直到商为0,然后将所有余数倒过来排序
var arr=[];
while(n!=0){
arr.push(n%2);
n=Math.floor(n/2);
}
while (arr.length){
result+=arr.pop();
}
return result;
}