Suo padre, il re Giovanni I, gli fece avere una buona educazione ed una buona istruzione come ai suoi cinque tra fratelli e sorelle che arrivarono all'età adulta, Edoardo, Pietro, Enrico, Isabella e Ferdinando, in un ambiente tranquillo e privo di intrighi (Il grande poeta portoghese, Luís de Camões, li cita nel racconto epico, I Lusiadi, come Ínclita geração). Giovanni fu particolarmente legato ai fratelli, Edoardo, il futuro re del Portogallo, e Pietro, il futuro reggente.
Nel 1427 ordinò la costruzione della Quinta da Bacalhoa[7]
.
Nel 1431, alla morte del nonno della moglie, Nuno Álvares Pereira, Giovanni gli succedette nella carica di conestabile del regno.
Il 14 agosto 1433, quando suo padre morì di peste, suo fratello Edoardo divenne re e Giovanni subito appoggiò il fratello nel favorire la concordia della nazione ed a proseguire la politica del padre riguardo all'esplorazione marittima dell'Africa.
Nel 1437, i suoi fratelli Henrique e Fernando, detto il Santo, persuasero il re Edoardo a lanciare un'offensiva in Marocco per ottenere una migliore base africana per la futura esplorazione dell'Atlantico e anche per compensare la perdita di importanza commerciale di Ceuta da quando era divenuta parte del regno portoghese, nel 1415. Però Giovanni e l'altro fratello, Pietro, Duca di Coimbra, erano contrari all'iniziativa; avrebbero preferito evitare un conflitto con il re del Marocco. I fatti dettero loro ragione. L'attacco a Tangeri ebbe successo, ma a prezzo di alte perdite umane e ben presto la città fu perduta. Il fratello più giovane di Giovanni, Fernando, fu catturato, tenuto in ostaggio e morì in seguito in prigionia a Fès.
Giovanni, dopo il disastro, difese tenacemente Ceuta dagli attacchi del re del Marocco e offrì la città in cambio della libertà di suo fratello Fernando, che però rifiutò lo scambio, che quindi non poté essere concluso.
Suo fratello Edoardo morì di peste, nel 1438, poco dopo l'attacco a Tangeri, come i suoi genitori, prima di lui. Alla sua morte, sul trono, gli succedette il figlio Alfonso V detto l'Africano, che era minorenne, quindi, sotto la reggenza della regina madre, Eleonora. Questa decisione (testamentaria del de defunto re) non piacque alla popolazione di Lisbona, che iniziò a ribellarsi, ma Giovanni entrò nella città e riuscì a spegnere ogni tentativo di ribellione, mentre suo fratello Pietro raccoglieva il malcontento intorno a sé, per cui fu richiesto alle cortes di pronunciarsi sulla reggenza:
lasciarla ad Eleonora, appoggiata dalla maggioranza dei nobili, come da volontà testamentarie, oppure
darla invece a Pietro, Duca di Coimbra, lo zio del re, che aveva l'appoggio di una parte della nobiltà ma soprattutto della popolazione.
Le cortes (pare che Pietro riuscisse negli intrighi meglio del fratellastro, Alfonso, conte di Barcelos e futuro duca di Braganza, che parteggiava per la regina madre), nel dicembre del 1439, si pronunciarono per Pietro. La regina madre, Eleonora, e Alfonso si rivolsero allora a Giovanni (fratellastro e genero di Alfonso), che aveva il controllo della città di Lisbona, per avere il suo appoggio e poter mantenere la reggenza contro la volontà delle cortes, ottenendone però un rifiuto. Giovanni approvò il deliberato delle cortes e si schierò lealmente col fratello Pietro, che mantenne il potere sino al 1448.
Giovanni morì il 18 ottobre del 1442, e fu inumato nel Monastero di Batalha[1]. Il figlio Diego gli succedette nel titolo di conestabile del Portogallo.