因此,我提出了一个在线测试问题,类似这样:
编写一个函数来检查给定值是否为一位数字。如果不是,则将所有数字相加,直到变成一个位数。例如,给定值为55555,结果为25。当2和5相加时,将得到7。
我的回答是:
function createCheckDigit(membershipId) {
let sum = 0;
let array = membershipId.toString().split("")
if(array.length > 1){
for(let i = 0; i < array.length; i++){
sum = sum + parseInt(array[i]);
}
}
if(sum.toString().split("").length > 1){
return createCheckDigit(sum.toString())
} else {
return sum
}
}
console.log(createCheckDigit("55555"));
这个问题的目标是:
测试用例答案=7(完成)
需要单次迭代(需要)
需要两次迭代(完成)
需要多次迭代(完成)
我成功地完成了1、3、4,但没有完成2。我不知道单次迭代应该进行哪一部分?
1条答案
按热度按时间pxyaymoc1#
我想我已经找到了解决问题的办法: