1
resposta

[Sugestão] substr obsoleto

Durante a criação do componente de formulário, recebi um aviso da IDE indicando que substr() está obsoleto. Embora o código ainda funcionasse normalmente nos navegadores modernos, decidi buscar uma alternativa mais atual e segura.

Lendo a documentação e pesquisando em alguns fóruns, encontrei a função substring() como a melhor substituta. Após a mudança, o código ficou assim:

tempoDecorrido(): string {
  return new Date(this.tempoEmSegundos * 1000)
    .toISOString()
    .substring(11, 19); 
    // antes era substr(11, 8)
    }

Apesar de terem nomes parecidos, substr() e substring() funcionam de forma diferente:

  • substr(início, comprimento): o segundo argumento define quantos caracteres extrair.

  • substring(início, fim): o segundo argumento define até qual índice extrair (sem incluí-lo).

Mesmo que substr() ainda funcione, há chances de sua remoção em futuras versões do JavaScript. Por isso, preferi adaptar o código com substring(), entendendo a diferença de comportamento para evitar possíveis bugs no futuro.

1 resposta

Olá, Ubiratan, como vai?

Obrigado por compartilhar essa sugestão e observação tão relevante sobre o uso do substr() e a escolha pelo substring(). Esse tipo de contribuição enriquece bastante o aprendizado de todos por aqui.

Sempre que quiser trocar ideias ou levantar pontos como esse, o fórum está à disposição.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!