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

276
Visualizações
¿Cómo recuperar datos de tablas del almacenamiento local en el formato correcto?

Estoy creando una aplicación de seguimiento de gastos que guarda los datos ingresados en un formulario, luego los registra en una tabla debajo de las entradas (Nombre, Fecha y Cantidad), luego guarda esos datos en el almacenamiento local del navegador como una matriz. Estoy tratando de recuperar los datos de la tabla tal como se registraron en la tabla (en las filas y columnas correctas) cuando se vuelve a cargar la página.

 //FUNCTION TO GET EXISTING EXPENSES FROM LOCAL STORAGE WHEN PAGE IS REFRESHED (display Table on the screen with refreshing Page) function getExpenses(expenses) { //CHECK If an expense exists in Local Storage //Checks if expense exists if (localStorage.getItem("expenses") === null) { expenses = []; //create a new array for expenses if none exists } else { expenses = JSON.parse(localStorage.getItem("expenses")); //Gets back the array of existing expenses if expenses exist } expenses.forEach((item) => { //create <tr></tr> const tableRow = document.createElement("tr"); //new table row tableRow.classList.add("table-row"); //set class to t-row tableHead.appendChild(tableRow); //Append new row(.tableHead) to the table in HTML //create <td></td> const tableDataA = document.createElement("td"); //New Table Data Element tableDataA.innerText = item; tableRow.appendChild(tableDataA); const tableDataB = document.createElement("td"); tableDataB.innerText = item; tableRow.appendChild(tableDataB); const tableDataC = document.createElement("td"); tableDataC.innerText = item; tableRow.appendChild(tableDataC); //APPEND expenseTable.appendChild(tableRow); //To Append .t-row to the Table element in our HTML file }); }

ingrese la descripción de la imagen aquí

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

0

Según el resultado que obtiene, expenses son una matriz de cadenas en lugar de una matriz de objetos. Por lo tanto, debe iterarlo en grupos de 3, colocando elementos secuenciales de cada grupo en un TD diferente.

No puede hacer esto fácilmente con forEach() , así que use un bucle for .

 for (let i = 0; i < expenses.length; i += 3) { //create <tr></tr> const tableRow = document.createElement("tr"); //new table row tableRow.classList.add("table-row"); //set class to t-row tableHead.appendChild(tableRow); //Append new row(.tableHead) to the table in HTML //create <td></td> const tableDataA = document.createElement("td"); //New Table Data Element tableDataA.innerText = expenses[i]; tableRow.appendChild(tableDataA); const tableDataB = document.createElement("td"); tableDataB.innerText = expenses[i + 1]; tableRow.appendChild(tableDataB); const tableDataC = document.createElement("td"); tableDataC.innerText = expenses[i + 2]; tableRow.appendChild(tableDataC); //APPEND expenseTable.appendChild(tableRow); //To Append .t-row to the Table element in our HTML file }

Probablemente sería mejor si rediseñara su matriz de expenses para que sea una matriz de objetos en lugar de elementos separados para cada columna, por ejemplo

 [ { name: "Gym", date: "2022-02-15", amount: 200 }, { name: "Grocery", date: "2022-02-20", amount: 500 } ]
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