Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

179
Views
Cómo obtener un valor de Object en una función dentro de sí misma

Estoy tratando de cambiar/leer una variable de un objeto a través de funciones, que están dentro del mismo objeto, pero devuelve un error de que la función no existe.

Todavía estoy aprendiendo JS, así que realmente no sé cómo hacer que esto funcione.

Si ideclaro todas las variables y funciones como globales, funciona, pero quiero hacerlo como un objeto, por lo que es más fácil de trabajar.

Gracias :)

Error como que las variables/funciones no existían

La consola:

 Command: Baixar = Object.create(Atualizador) Return: {} Command: Baixar.AtualizarMangas('nome=tamer') Return: undefined Error: atualizador.js:17 Uncaught (in promise) TypeError: this.AtualizarProximoManga is not a function at atualizador.js:17:9 (anônimo) @ atualizador.js:17 Promise.then (assíncrono) AtualizarMangas @ atualizador.js:14 (anônimo) @ VM5443:1 Command: Baixar.AtualizarProximoManga() Error: atualizador.js:26 Uncaught TypeError: Cannot read properties of undefined (reading 'Nome') at Object.AtualizarProximoManga (atualizador.js:26:85) at <anonymous>:1:8 AtualizarProximoManga @ atualizador.js:26 (anônimo) @ VM5451:1

El código:

 var Atualizador = { QtdMaxima: 5, Mangas: [], Quantidade: 0, Atual: -1, QtdAtualizando: 0, Concluido: false, AtualizarMangas: function (parametros = '') { Query = 'action=listarmangasdb'; if (parametros != '') { Query = Query+'&'+parametros; } Response = getExternalAPIResponse(Query); Response.then(function(result){ this.Mangas = result; this.Quantidade = this.Mangas.length; this.AtualizarProximoManga(); }) }, AtualizarProximoManga: function() { this.Atual += 1; this.QtdAtualizando += 1; getExternalAPIResponse('action=updatemangachapters&manga='+this.Mangas[this.Atual]['Nome']).then( function(result) { this.QtdAtualizando -= 1; this.IniciarProximo(); } ) this.IniciarProximo(); }, IniciarProximo: function() { if (!this.Concluido) { if (this.Atual < this.Quantidade) { if (this.QtdAtualizando < this.QtdMaxima) { this.AtualizarProximoManga(); } } else { this.Concluido = true; console.log('Mangas Atualizados'); } } }, }
about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!