不要严格判断我的代码,我是js新手,我想了解我的错误是什么。很高兴听到更多的解释。任务:'创建一个函数,将数组中所有以 3 的倍数和以 4 结尾的数字相加'。问题:“添加 3 的倍数的数组数字没有问题,但以 4 结尾的数字不是”。下面是我的代码=>
let input = [14, 3, 9, 14, 5];
function ege(int) {
let sum = 0;
for (let i = 0; i < int.length; i++) {
if (int[i] % 3 === 0) {
sum += int[i];
}
if ((int[i].length - 1) === 4) {
sum += int[i];
}
}
return sum;
}
console.log(ege(input));
如果您需要同时遵守两个条件,这是一个可行的选择:
int在这种情况下,数组的元素是numbers。数字没有属性length,因此int[i].length - 1不是一个完全正确的表达方式。要获得整数的最后一位,只需查看该数字除以 10 的余数。
此外,问题指出数字必须是 3 的倍数并且以 4 结尾,并且在上面的示例中,数字只能满足其中一个条件。
要解决,您需要
if使用逻辑 AND将条件组合为一个