DEV Community

Gabriel Alvino
Gabriel Alvino

Posted on

Seu código vai quebrar se você não usar this. nesse caso (Java Script)

function resultAverage(){
  return (this.notes[0] + this.notes[1])/2;
}

var student1 = {
  name: "Ana",
  notes: [9, 10],

  average: resultAverage
}

var student2 = {
  name: "Bia",
  notes: [10, 10],

  average: resultAverage
}

console.log(student1.name);
console.log(student1.average(student1.notes[0],student1.notes[1]));

console.log(student2.name);
console.log(student2.average(student2.notes[0],student2.notes[1]));

Enter fullscreen mode Exit fullscreen mode

Lamento dizer, mas seu código vai quebrar se você tirar o this nessa parte:

function resultAverage(){
return (this.notes[0] + this.notes[1])/2;
}

Vou pegar explicação técnica do www.w3school e depois vou explicar de uma forma bem simples.

In an object method, this refers to the object.

Minha explicação simples e com um vocabulário acessível: as variáveis student1 e student2 representam uma estrutura blocada de código. O this está apontando para as notas dentro dessas estruturas blocadas,dessa forma consegue identificar as notas dos estudantes. É como se comandando this falasse "Estrutura blocada de código, deixa eu vê se tem um objeto notas aí".

Top comments (0)