1
resposta

Há diferença entre function e class para a criação de classes?

No curso, a Juliana dá o seguinte exemplo:

function User(nome, email){
    this.nome = nome;
    this.email=email;
}

Dá pra fazer assim, também:

class User{
    constructor(nome, email){
        this.nome=nome;
        this.email=email;
    }
}

Gostaria de saber se ambas formas funcionam do mesmo jeito ou se há diferença. Agradeço!

1 resposta

Olá Patrick, tudo bem?

Ótima pergunta! Na verdade, a principal diferença entre a criação de classes com function e class é a sintaxe utilizada. Ambas formas criam classes do mesmo jeito e funcionam da mesma maneira.

A diferença é que a sintaxe com class é mais recente e foi introduzida no ECMAScript 2015 (também conhecido como ES6). A sintaxe com function é mais antiga e foi utilizada antes da introdução do ES6.

A sintaxe com class é mais clara e legível, o que torna o código mais fácil de entender e manter. Além disso, a sintaxe com class permite a utilização de recursos avançados, como herança e métodos estáticos, de uma maneira mais simples e direta.

No entanto, a sintaxe com function ainda é amplamente utilizada em projetos antigos ou em navegadores mais antigos que não suportam a sintaxe com class.

Espero ter ajudado a esclarecer sua dúvida! Se tiver mais alguma pergunta, estarei a disposição.

Grande abraço e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.