Johann war der Sohn von Graf Engelbert I. von Nassau-Dillenburg und Johanna von Polanen von der Lek. Als sein Vater 1442 starb, erbte Johann dessen Besitz in den Niederlanden und nannte sich Graf von Nassau-Dillenburg, Vianden und Dietz. Die deutschen Besitztümer fielen an Johanns jüngeren Bruder Heinrich II.
Als General diente Johann unter den Burgunderherzögen Philipp dem Guten und Karl dem Kühnen. 1445 begleitete er den ersteren bei seinem Angriff auf die Grafschaft Holland, zum Dank wurde er zum Seneschall von Burgund ernannt. Der Graf erweiterte das Schloss Breda um seine Türme und gründete eine große Bibliothek.
Grabmäler
Johann und seine Frau Maria sind in der zum Grabmonument seines Vaters gehörenden Gruft in der Grote Kerk zu Breda bestattet und auch auf dem Grabmonument dargestellt. Darüber hinaus ließ Johann sein Herz in Dillenburg in der Evangelischen Stadtpfarrkirche bestatten. Dort hat sich eine ungewöhnlich frühe Herzgrabplatte erhalten.
Nachkommen
Johann heiratete am 7. Februar 1440 Maria von Loon-Heinsberg. Mit ihr hatte er folgende Kinder:
Da Maria die Erbin von Millen, Gangelt, Waldfeucht (Vucht), Lummen und Stein an der Maas war, gelangte durch die Heirat erneut (wie schon durch die Ehe des Vaters) wichtiger Besitz am Niederrhein in die Hände der Nassauer.
Pierre Even: Dynastie Luxemburg-Nassau. Von den Grafen zu Nassau zu den Großherzögen von Luxemburg. Eine neunhundertjährige Herrschergeschichte in einhundert Biographien. Luxemburg 2000. S. 88f.