il significato dei tag dovrebbe già aiutarti



sta per paragrafo: serve per contenere un blocco di testo
<h1/2/3> sta per header: serve per contenere un titolo.

La differenza poi tra i vari h1, h2, h3 non deve essere considerata da un punto di vista visivo (ovvero come vengono rappresentati a video e usarli in base alla grandezza del font) ma solo da un punto di vista logico in relazione alla struttura dei contenuti di una pagina.

h1 sarà usato per un unico titolo
h2 per più titoli di secondo livello
...


Circa la domanda sugli alert sugli errori javascript puoi ovviare scrivendo un messaggio di errore dentro un div con il metodo .innerHTML (ma usa il forum scripting per questo genere di domande)



Ciao