Funktion nimen ja muuttujan nimen yhteentörmäys JavaScriptissä

Edellä kuvatusta seuraa, että muuttujan ja funktion olemassaolo samalla nimellä voi helposti johtaa ongelmaan.

Seuraavassa esimerkissä funktio func ylikirjoitetaan ja sen tilalle tulee merkkijono 'string':

javascriptfunction func() {
  return '!';
}

func = 'string'; // ylikirjoitetaan funktio-muuttuja merkkijonolla
func(); // saamme virheen, koska func ei ole enää funktio

Tällaisen välttämiseksi on noudatettava sääntöä, joka on yhteinen kaikille ohjelmointikielille: funktioiden tulisi olla verbejä ja muuttujien - substantiiveja.