Fiquei com uma dúvida em relação a como é feito o retorno da execução da função nesse trecho do código:
function LogarTempoExecucao() {
return function (target: any, propertyKey: string, descriptor: PropertyDescriptor) {
const metodoOriginal = descriptor.value;
descriptor.value = function (...args) {
const t1 = performance.now();
const retorno = metodoOriginal();
const t2 = performance.now();
console.log(`Tempo de execução do ${propertyKey}: ${t2 - t1}`);
retorno; // AQUI
};
return descriptor;
};
}
export default LogarTempoExecucao;
É criada uma variavel chamada "retorno", mas que poderia ter qualquer outro nome. Dai ela só é escrita no final, sem a palavra "return" antes e segundo o instrutor é feito o retorno. Fiquei confuso nessa parte.
Alguem poderia me ajudar a compreender melhor o funcionamento desse trecho do código ?