O que é mais rápido: tente pegar vs Promise

Eu ouvi essa opinião de que você deve evitar o uso de try / catch, porque são necessários muitos recursos. Então, poderia prometer que o tratamento de erros poderia ser mais rápido? Ou isso não importa?

function f(somethingDangerous) {
  return new Promise((resolve, reject) => {
    // try {
    //   somethingDangerous();
    //   resolve();
    // } catch (err) {
    //   reject(err);
    // }

    // VS

    somethingDangerous();
    resolve();
  }).catch((err) => {
    console.error('Catched: ' + err);
  });
}

f(() => {throw 'DANGEROUS THING';});

UPD: Eu sei que try / catch não funciona com código assíncrono dentro. Eu só estou querendo saber se há alguma razão para evitar a tentativa / captura por causa de problemas de desempenho? E existe alguma diferença entre as duas abordagens acima?

UPD2: Tentei correr meus cavalos :)https://jsperf.com/try-catch-vs-promise

questionAnswers(3)

yourAnswerToTheQuestion