Po naciśnięciu przycisku lub klawisza enter, kod wykonuje tą samą funkcję. Czy mogę bardziej zooptymalizować kod?
btn.addEventListener("click",findWeatherDetails);
input.addEventListener("keyup", e => e.key === "Enter" ? findWeatherDetails() : "");
Po naciśnięciu przycisku lub klawisza enter, kod wykonuje tą samą funkcję. Czy mogę bardziej zooptymalizować kod?
btn.addEventListener("click",findWeatherDetails);
input.addEventListener("keyup", e => e.key === "Enter" ? findWeatherDetails() : "");
@lightinside: "kod wykonuje tę samą funkcję" - nie. W rezultacie wykona się ta sama funkcja ale po naciśnięciu kod nie wykonuje tej samej funkcji. Tak naprawdę masz dwa różne elementy, eventy i funkcje. W drugiej linijce wykona się anonimowa funkcja, w środku której wykona się findWeatherDetails(). Zwróć uwagę na nawiasy po findWeatherDetails w drugim listenerze i ich brak w pierwszym. To samo w innym zapisie:
btn.addEventListener('click', function() {
findWeatherDetails();
});
input.addEventListener('keyup', function(e) {
if (e.key === 'Enter') {
findWeatherDetails();
} else {
return '';
}
});