Как добавлять в LocalStorage, но не перезаписывать данные?
Предыдущий вопрос про добавление в localStorage решился. Теперь не могу понять - как по щелчку кнопки добавлять каждый раз новую информацию в localStorage, а не перезаписывать старую, как сейчас получается. Не пойму в чём причина, уже неделю мучаюсь с этим.
tdOne.innerHTML = (day + '.' + (month + Number(1)) + '.' + year);
tdTwo.innerHTML = window.calc.income.value;
tdThree.innerHTML = window.calc.expense.value;
tdFour.innerHTML = window.calc.amount.value;
tdFive.innerHTML = window.calc.result.textContent;
let oneVal = tdOne.innerHTML;
let twoVal = tdTwo.innerHTML;
let threeVal = tdThree.innerHTML;
let fourVal = tdFour.innerHTML;
let fiveVal = tdFive.innerHTML;
let makeNewRow = function (oneVal, twoVal, threeVal, fourVal, fiveVal) {
let allRows = [];
let addRow = {
one: oneVal,
two: twoVal,
three: threeVal,
four: fourVal,
five: fiveVal,
}
allRows.push(addRow);
localStorage.setItem('addedrow', JSON.stringify(allRows));
}
makeNewRow(oneVal, twoVal, threeVal, fourVal, fiveVal);
Ответы (2 шт):
Автор решения: Armen
→ Ссылка
в localStorage и должны сохранятся только данные после каждого обновления страница перерисовывается соответственно ты должен заполнять свой table значениями из localStorage если там есть что то или своими пример
innerHTML = localStorage.getItem('что то из хранилищя') || 'что то свое'
пример того как не заменять а добавлять то есть берешь старое значение и обеденяеш с новым
localStorage.setItem('myKey',(localStorage.getItem('myKey') || '') + 'new value')
Автор решения: Igor
→ Ссылка
let allRows = [];
// get what is already there
if (localStorage.getItem('addedrow'))
allRows = JSON.parse(localStorage.getItem('addedrow'));
let addRow = {
one: oneVal,
two: twoVal,
three: threeVal,
four: fourVal,
five: fiveVal,
}
allRows.push(addRow);
localStorage.setItem('addedrow', JSON.stringify(allRows));