1.
1 < number_cam < 5
вычисляется как
((1 < number_cam) < 5)
.
Соответственно, получаем
((1 < 17) < 5) ≡ ((true) < 5 ≡ (1 < 5) ≡ true
Значит условие выполнится и сработает ветка
count_dvr = 4;
2. Вы пропустили случай, когда number_cam === 1.
В целом, ваш код проще всего записать так:
const count_dvr = (number_cam) => {
if (number_cam < 1) {
return 0;
}
if (number_cam < 5) {
return 4;
}
if (number_cam < 9) {
return 8;
}
if (number_cam < 17) {
return 16;
}
if (number_cam < 33) {
return 32;
}
return 64;
};
console.log(count_dvr(17));
// 32