【发布时间】:2018-05-03 06:40:30
【问题描述】:
在代码大战中,我正在训练一个乘法逆项目。例如,目标是——如果“39”是输入,则输出应该是“4”[39 = 3*9 ==> 27 = 2*7 => 14 = 1*4 ==> (4)] . 我写了一些代码,只是将输入乘以第一级(39 ==> 27)。
我的代码到现在为止,
function persistence(num) {
var digits = new Array();
digits = num.toString().split("").map(Number);
var res = 1;
for (i = 0; i < digits.length; i++) { res = res * digits[i]; }
return res;
console.log(persistence(digits));
}
我只是在学习 javascript,我被困在这里。我需要循环这个过程,直到我得到一个数字。
有人可以帮帮我吗? 对不起,如果我的问题不清楚...
【问题讨论】:
-
你只需要一个while循环来包装这个方法
-
您可以保持您的代码原样,并且只需像这样
return num < 10 ? num : persistence(res);那样制作您的返回语句。您的函数仍将运行,但不会错过它所花费的几分之一秒。
标签: javascript arrays function loops