第一种方法:
(将数字转化为字符串,再)将字符串分割为数组,循环判断数组的每一项是否为这个字符(以‘1’为例)
function patch(num){
var s=num.toString();
var arr = s.split('');
var count = 0;
for(var i=0;i<arr.length;i++){
if(arr[i]=='1'){
count++;
}
}
return count;
}
第二种方法:
(将数字转化为字符串,然后)利用正则表达式,匹配这个字符串,利用match()方法(以‘1’为例)
function patch(num){
var s=num.toString();
if(s.match('/1/g')){
return s.match('/1/g').length;
}else{
return 0;
}
}
补充:利用递归判断一个数字中1出现的次数:
function getNum(n){
if(n==0){
return 0;
}
else{
var m=Math.floor(n/10);
var l=n%10;
if(l==1){
return 1+getNum(m)
}else{
return getNum(m)
}
}
}
本文介绍两种方法来计算一个整数中数字1出现的次数。第一种方法是将数字转换为字符串,分割成数组并遍历检查每个元素是否为1。第二种方法使用正则表达式匹配所有出现的1。此外,还提供了一个递归函数实现相同功能。

被折叠的 条评论
为什么被折叠?



