Johan Halvorsen var sønn av Bernt Halvor Halvorsen (1816–68) og Johanne (Hanna) Hansdatter (1821–80). Faren var politibetjent i Drammen, men døde da Johan bare var fire år gammel. Efter å ha spilt både fiolin, fløyte, kornett og andre instrumenter i Drammen i ni år, reiste Johan som 15-åring til Kristiania for å ta fiolinundervisning hos Gudbrand Bøhn (1839–1906). Samtidig fikk han spillejobber på Folketheatret. Etter at moren til Johan døde i 1880 innrullerte den italienskfødte dirigent Paolo Sperati (1821–84) ham endog i Forsvarets Stabsmusikkorps.