求int型正整数在内存中存储时1的个数
var num = readline();
let str = parseInt(num,10).toString(2) + '';
str = [...str]
let count = 0
str.forEach(e=> e == '1' ? count++ : '')
console.log(count)
1.js可以很简单的做任意进制的转化,核心函数是全局函数parseInt(str,radix)与Number.toString(radix);
2.parseInt(str,radix); 将字符串str按照radix进制编码方式转换为10进制返回,没有radix,默认为10; 此方法把任意进制字符串转为10进展返回。
- parseInt(num,8); //八进制转十进制
- parseInt(num,16); //十六进制转十进制
- parseInt(num).toString(8) //十进制转八进制
- parseInt(num).toString(16) //十进制转十六进制
- parseInt(num,2).toString(8) //二进制转八进制
- parseInt(num,2).toString(16) //二进制转十六进制
- parseInt(num,8).toString(2) //八进制转二