Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

89
Visualizações
La función sigue inicializando la variable local en lugar de usar la variable existente

Soy nuevo en javascript y estoy tratando de obtener un montón de tareas de diferentes proyectos de todoist y tratando de asignar una etiqueta para esas tareas.

 const task_list = {}; for (let id of project_id) { api.getTasks({ projectId: id, filter: "(today | overdue | p1) & !subtask" }) .then((tasks) => { Object.assign(task_list, { id: tasks }); console.log(task_list)}) .catch((error) => console.log(error)) } for (let id of project_id) { console.log(id) console.log(task_list.id) }

Este es actualmente mi borrador para el código. El archivo console.log en el bucle for en la parte inferior está imprimiendo sin definir, pero el archivo console.log detrás de Object.assign puede imprimir el resultado correcto.

Por favor ayuda.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Está reemplazando la clave de identificación del objeto task_list para cada iteración, porque Object.assign copia las claves y los valores de un objeto al objeto de destino, que es task_list en su caso.

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign

si está intentando crear una tabla hash para realizar un seguimiento de todas las tareas por ID

podrías mutar la lista de tareas y asignarla por id.

 task_list[id] = tasks

o reemplace la task_list original usando Object.assign

 const new_task_list = {} new_task_list[id] = tasks task_list = Object.assign(task_list, new_task_list)

o usando la sintaxis es6

 Object.assign(task_list,{[id]:tasks})

dentro de su ciclo posterior puede acceder al valor de la tarea usando la clave de identificación

 for (let id of project_id) { console.log(task_list[id].id) }

Además, el último ciclo imprimirá un objeto vacío porque se ejecutará antes de que api.getTasks complete la solicitud, deberá crear una matriz para guardar todas las promesas y luego usar

 Promise.all(promises).then(() => { // your loop here })

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/all

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda