Как переделать код ? If Else

Подскажите как переделать код чтобы после первого выполнения условия функция не завершалась ? Я имею ввиду чтобы могло выполниться несколько else if. Так как на данный момент после выполнения одного условия функция завершается.

function hireNewEmployee (employee) {
    const reasons = [];
    if (employee.age < 25) {
        reasons.push(employee.age);
    } else if (employee.education !== 'higher') {
        reasons.push(employee.education);
    } else if (employee.experience < 1) {
        reasons.push(employee.experience);
    }
    if (reasons.length > 0) {
        return `Not hired: Here is why: ${reasons.join(', ')}`
    }
    else {
        return 'You are Hired! Congrats!'
    }
}
console.log(hireNewEmployee(employee));

Ответы (2 шт):

Автор решения: Алексей

Вам не следует использовать else, если вы хотите, чтобы выполнялось несколько условий.

function hireNewEmployee (employee) {
    const reasons = [];
    if (employee.age < 25) {
        reasons.push(employee.age);
    }
    if (employee.education !== 'higher') {
        reasons.push(employee.education);
    }
    if (employee.experience < 1) {
        reasons.push(employee.experience);
    }
    if (reasons.length > 0) {
        return `Not hired: Here is why: ${reasons.join(', ')}`
    }
    else {
        return 'You are Hired! Congrats!'
    }
}
console.log(hireNewEmployee(employee));
→ Ссылка
Автор решения: Smile

Сделал таким образом

function hireNewEmployee (employee) {
    const reasons = [];
    if (employee.age < 25) {
        reasons.push(employee.age);
    }
    if (employee.education !== 'higher') {
        reasons.push(employee.education);
    }
    if (employee.experience < 1) {
        reasons.push(employee.experience);
    }
    return reasons.length
        ? `Not hired: Here is why: ${reasons.join(', ')}`
        : 'You are Hired! Congrats!'
}
console.log(hireNewEmployee(employee));

→ Ссылка