Zbieżność nazwy funkcji i zmiennej w JavaScript

Z powyższego opisu wynika, że istnienie zmiennej i funkcji o tej samej nazwie może łatwo prowadzić do problemu.

W następującym przykładzie funkcja func zostanie nadpisana i zamiast niej stanie się ciągiem znaków 'string':

javascriptfunction func() {
  return '!';
}

func = 'string'; // nadpiszemy zmienną z funkcją ciągiem znaków
func(); // otrzymamy błąd, ponieważ func - nie jest funkcją

Aby do tego nie doszło, należy przestrzegać zasady ogólnej dla wszystkich języków programowania: funkcje powinny być czasownikami, a zmienne - rzeczownikami.