Value of Promise.all () después de ser rechazado, muestra ['' PromiseStatus '']: resuelto si el bloque catch está presente

Tengo dos promesas, una rechazada y otra resuelta. Promise.all se llama. Ejecutó el bloque catch de Promise.all ya que una de las promesas es rechazada.

const promise1 = Promise.resolve('Promise 1 Resolved');
const promise2 = Promise.reject('Promise 2 Rejected');

const promise3 = Promise.all([promise1, promise2])
  .then(data => {
    console.log('Promise.all Resolved', data);
  })
  .catch(error => {
    console.log('Promise.all REJECTED', error);
  })
setTimeout(() => {
  console.log(promise1, promise2, promise3)
}, 200);

Si no tengo el truco en Promise.all (), el valor permanece como Rechazado, es decir,

const promise3 = Promise.all([promise1, promise2])
  .then(data => {
    console.log('Promise.all Resolved', data);
  })

Me estoy perdiendo algo sobre las promesas.

Respuestas a la pregunta(2)

Su respuesta a la pregunta