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

Identificador esperado

Fiz o código conforme exibido no exercício, mas aparece um erro de identificador esperado. Me parece que o nome da função está com algum problema!!

Como resolver?

Segue meu código...

const colecionador = {
    nome: "João do Gibi",
    idade:41,
    tipocolecao: ["quadrinhos"],
    contato: "joao@email.com",
   }

  adicionarTipo: function (propriedade, tipo)
  {
  this[propriedade].push(tipo)
  }

  for(i = 0; i < 4; i++) {
      colecionador.adicionarTipo("tipocolecao","HQ"+i)
    }

 console.log(colecionador
3 respostas

Acredito que depois da palavra function, falte o nome da função.

Coloquei um nome para a função, mas não resolveu...

function adicionarTipo(propriedade, tipo) {
    {
      this[propriedade].push(tipo)
    }
  }

    for(i = 0; i < 4; i++) {
      colecionador.adicionarTipo("tipocolecao","HQ"+i)
    }

   console.log(colecionador)

O erro agora é que adicionarTipo não é uma função definida, na linha "colecionador.adicionarTipo"...

Já fiz várias tentativas de mudar e ainda não consegui resolver! :(

Algo de errado não está certo.

solução!

Priscila, o problema está acontecendo também porque a function esta fora do escopo do objeto colecionador, ou seja fora das chaves {} deixe assim que funcionara:

const colecionador = {
    nome: "João do Gibi",
    idade:41,
    tipocolecao: ["quadrinhos"],
    contato: "joao@email.com",
    adicionarTipo: function adicionarTipo(propriedade, tipo)
  {
  this[propriedade].push(tipo)
  }

   }

  for(i = 0; i < 4; i++) {
      colecionador.adicionarTipo("tipocolecao","HQ"+i)
    }
     console.log(colecionador.tipocolecao)

Inclusive nesse caso, a function pode ficar da forma que estava adicionarTipo:function()... das duas formas funcionara.