Deo zbornika Učimo Javascript
Pravljenje alijas funkcija
Kada neke metode pozivamo veoma često, korisno je napraviti njihove aliase.
Prost primer
Ako neka metoda ne vraća vrednost (poput console.log
), dovoljno je napraviti novi identifikator i proslediti mu naziv metode. Nadalje se u programu možemo služiti novim imenom:
const ispis = console.log
ispis('Zdravo svete')
Alijasi za selektore
Ako metoda vraća vrednost, onda alias moramo kreirati preko povratne funkcije:
const uzmi = id => document.getElementById(id)
const naslov = uzmi('naslov')
console.log(naslov)
Možemo napraviti alijase i za druge selektore, poput querySelector
:
const $ = selektor => document.querySelector(selektor)
const naslov = $('#naslov')
console.log(naslov)
Alijas za dodavanje događaja
Ako nam je predugo da stalno kucamo addEventListener
, možemo napraviti kraći alias. No, pošto događaje dodajemo na različite elemente, pitanje je kome dodati alias metodu? Alias treba dodati zajedničkom pretku svih elemenata koji primaju događaje, što je EventTarget
klasa.
Alias on
možemo dodati klasi preko prototype
atributa, na sledeći način:
EventTarget.prototype.on = EventTarget.prototype.addEventListener
Složen primer
Aliase za selektor i dodavanje događaja možemo koristiti zajedno na sledeći način:
<h2 id="naslov">Zdravo</h2>
<script>
const $ = selektor => document.querySelector(selektor)
EventTarget.prototype.on = EventTarget.prototype.addEventListener
$('#naslov').on('click', function() {
alert('klik')
})
</script>
Gornji primer upotrebe aliasa veoma podseća na jQuery biblioteku. To je zato što je jQuery nastao kao kolekcija aliasa.