【发布时间】:2012-04-10 11:00:00
【问题描述】:
数组中的每个字符串都是一个数字,例如array1 = ["1296", "12", "27"];
对于上面的每个字符串,如果可以除以 6 没有余数,我想至少这样做一次,然后如果结果仍然超过 2 个字符,重复。然后替换相同位置的字符串,这样数组就会变成["36", "2", "27"];
到目前为止,我的代码部分有效。
w=0;
function divideBySix(){
if ((array1[w] / 6) == (Math.floor(array1[w] / 6))) {
var temp = array1[w] / 6;
array1[w] = temp.toString();
if (array1[w].length < 3) {
w++;
}
divideBySix();
}
该函数成功地将第一个字符串除以6一次,然后一次又一次地调用自己,直到结果在2个字符以内。此时,它应该继续调用自己,并对数组的下一个字符串执行相同的操作。但它不会执行下一个字符串。我不知道为什么它在完成第一个字符串后停止。所以数组看起来像这样["36", "12", "27"]; 另外,w 成功地增加了。所以我知道它至少能做到这一点......
【问题讨论】:
标签: javascript arrays string function increment