Я хотел бы заменить оператор if на тернарный оператор. Дело в том, что в моем коде я хотел бы использовать один оператор if, а не if-else. Но кажется, что тернарные операторы принимают обязательный оператор else.
Мой предполагаемый код, который вызывает ошибку:
for(let i = 0; i<fibArr.length; i++) {
!fibArr[i] % 2 === 0 ? result += fibArr[i]; //The problem area
}
Вместо этого я должен написать код, который работает без проблем:
for(let i = 0; i<fibArr.length; i++) {
if(fibArr[i] % 2 !== 0) {
result += fibArr[i]
}
}
Полный код:
function sumFibs(num) {
let a = 0, b = 1, fib = 0;
let i = 0;
let fibArr = []
let result = 0;
while(fib <= num){
fibArr.push(fib)
a = b;
b = fib;
fib = a+b;
}
for(let i = 0; i<fibArr.length; i++) {
if(fibArr[i] % 2 !== 0) {
result += fibArr[i]
}
}
console.log(result)
return result;
}
0
для случая elseresult += (fibArr[i] % 2 !== 0) ? fibArr[i] : 0;
- person domsson   schedule 20.04.2020