li.appendChild(li);
Wobei das natürlich blödsinn ist, es müsste li.appendChild(input);
lauten
document.getElementById('inputlist').appendChild(neusList).appendChild(neusInput);
und funktioniert auch, aber was ist nun korrekt?
Erfüllt beides seinen Zweck - müsste man benchmarken, was performanter ist. In deinem Fall dürfte das aber kaum eine Rolle spielen.
Ich tendiere aber eher aus übersichtsgründen zum "vorher Zusammenbauen", sonst wirds am Ende etwas unübersichtlich. Aber das ist Geschmackssache.