Длительность прогулки

var temperature = 20;
var itsRaining = false;

var minutes;

if (itsRaining = true) {
minutes=0;
}
else if (temperature < 0 || temperature > 35) {
minutes = 0;
}
else if (temperature = 20) {
minutes = 20;
}
else if (temperature > 0 || temperature < 20) {
minutes = temperature;
}
else {
minutes = 20 - (temperature - 20);

}

выдает ошибку при значениях меньше 20. Помогите, пожалуйста.

вот тут условие неправильно прописано:

temperature > 0 || temperature < 20

замените на

temperature > 0 && temperature < 20

А также для сравнения нужно использовать равенство, а не присваивание. То есть if (itsRaining == true).

1 Симпатия

Можно и так: if(!itsRaining)

Не разобрался что это ветка про испытание ХД. Решение "классической "задачи:

Спойлеры
var temperature = 20;
var isRaining = true;
var minutes = 0;

var temperature = 20;
var itsRaining = false;

var minutes = 0;

if ((10 <= temperature && temperature < 15) && !isRaining) {
  minutes = 30;
} else if ((15<= temperature && temperature < 25) && !isRaining){
  minutes = 40;
} else if ((25<= temperature && temperature <= 35) && !isRaining){
  minutes = 20;
}

А тут из испытания:

Спойлеры!
var temperature = 20;
var itsRaining = false;

var minutes = 0;

if (!itsRaining && temperature > 0 && temperature < 35 ) {
minutes = 20 - Math.abs(20-temperature);

};