getElementById restituisce 1 solo elemento

getElementsByTagName restituisce un array di elementi. Nel tuo esempio un array di elementi



per accedere al primo ad esempio devi scrivere
codice:
document.getElementsByTagName('p')[0];
per accedere all'ultimo
codice:
var last = document.getElementsByTagName('p').length - 1; 
document.getElementsByTagName('p')[last];
ciao