Executando verificação de segurança...
3

Sem saber o que meuFilter faz, é difícil analisar com precisão, mas enfim...

Usar console.time pode mascarar alguns detalhes, como já informei neste teste que fiz. Sugiro que leia, mas pra resumir:

Existem várias coisas que acontecem antes do seu código começar a efetivamente rodar. Tem a inicialização do runtime, warmup do JIT, sabe-se lá mais o que o Node.js (ou seja lá qual for a engine que vc está usando) deve fazer na carga inicial.

Por isso o primeiro a rodar geralmente fica mais lento. Eu sugiro usar alguma lib específica que elimina esses fatores da medição, como o próprio Benchmark.js que vc mencionou. Tem exemplos dele aqui e aqui.

Carregando publicação patrocinada...
1

Gostei da resposta. Deu pra dar uma clearada grande.

Foi erro meu na hora de passar o código pro tabnews, acabei esquecendo de incluir o meuFilter, mas não tem segredo, é uma implementação bem básica:

Array.prototype.meuFilter = function (callback) {
  const novoArray = [];

  for (let item of this) {
    if (callback(item, this)) novoArray.push(item);
  }

  return novoArray;
};

Obrigado pela resposta.