创建一个函数toBins,参数为一个正整数n。函数将会把传入的n转化为二进制字符串。
四个字:除2取余
下面以 10 为例子 注意js除法取整用parseInt
10 % 2==0 bins[bins.length] = 0
10 / 2%2==1 bins[bins.length] = 1
10 / 2 / 2%2==0 bins[bins.length] = 0
10 / 2 / 2 / 2%2==1 bins[bins.length] =1
function toBins(n) {
if(n == 0) return '0';
var bins = []; //定义空数组
if (n % 2 == 0) { //偶数
bins[bins.length] = 0; //最后一位是0
while (1) {
if (parseInt(n / 2) % 2 == 1) { //(n/2==5)%2==1 第三次循环尽量n==2 (2/2=1)%2==1
bins[bins.length] = 1; //除2取余==1
n = parseInt(n / 2); //n = 10/2 此时n==1进入判断,跳出循环