function NumberOf1(n){
if(n < 0){
n = n >>> 0;//get到新技能,该行命令能够获取到负数的补码
}
var arr = n.toString(2).split('');
return arr.reduce(function(a,b){
return b === "1" ? a + 1 : a;
},0);
}
/*array.reduce(function(total, currentValue, currentIndex, arr), initialValue)
function(total,currentValue, index,arr) 必需。用于执行每个数组元素的函数。
函数参数:
参数 描述
total 必需。初始值, 或者计算结束后的返回值。
currentValue 必需。当前元素
currentIndex 可选。当前元素的索引
arr 可选。当前元素所属的数组对象。
initialValue 可选。传递给函数的初始值
输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。(javascript)
最新推荐文章于 2020-07-17 04:42:12 发布