Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

uso da variavel 'this'

Porque sempre tenho que utilizar a variavel implicita this? Nao poderia declarar somente nomeAtributo ao inves de this.nomeAtributo?

E outra: porque declaro dentro do construtor os atributos? Por exemplo, em Java declara-se fora do construtor.

2 respostas
solução!

Tiago, boa tarde!

Nós usamos o this para indicar que nos referenciamos a mesma classe, que estamos, pois caso usássemos variáveis com o mesmo nome do atributo pode gerar uma confusão de referencia, não só para o interpretador como para o programador, veja o caso abaixo:

class Pessoa {
    constructor() {
        var livro;
    } 

    ler (livro) {
        livro = livro; //Olha que confusão seria
    }
}

Para facilitar a leitura nós usamos o this

class Pessoa {
    constructor() {
        let this.livro;
    } 

    ler (livro) {
        this.livro = livro; //Agora sabemos o que está sendo atribuído ao que
    }
}

Sobre declarar os atributos dentro do construtcor, foi uma escolha dos criadores que fez sentido também visto que, para criar(construct) o objeto também faz sentido criar seus atributos. Se algo precisa ser definido na criação do objeto, então deveria estar dentro do construtor. Mas essa é uma escolha da linguagem. Varia da abstração do criador e das sugestões dos usuários(programadores)

Espero ter ajudado e bons estudos!

Certo, muito obrigado!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software