buenas, que tal!
@caricatos, segun la
documentacion oficial, si el segundo parametro es null, dicho elemento es agregado al final del elemento que se intenta agregar. o sea, el metodo actua como appendChild. de modo que si un elemento no tiene nodo, al leer la propiedad firstChild o lastChild, este devuelve como valor null. en conclusion, no deberia generar fallos si el elemento no dispone de nodos. personalmente a mi nunca me ha fallado. a menos que sea inconsistencia de algun navegador.