сделал list массивом. Непонятно только как вы при таком подходе собираетесь сопоставлять чекбоксы нужным индексам. я уже спрашивал вас о логике их выбора:
<div class="item">
<p class="copy">1</p>
<p class="copy-2">1.1</p>
</div>
<div class="item">
<p class="copy">2</p>
<p class="copy-2">2.1</p>
</div>
<div>
<p><input class="check" id="check-option-1" name="name" type="checkbox">
<label for="check-option-1"></label>
</p>
<img src="путь к картинке" alt="">
<h4>Название</h4>
<p class="copy">1</p>
<p class="copy-2">1.1</p>
</div>
В text должно быть: 1 1.1
<p class="copy">1</p>
<p class="copy-2">1.1</p>
В text должно быть: 2 2.1
<p class="copy">2</p>
<p class="copy-2">2.1</p>
check-option-1: "1 1.1"
check-option-2: "2 2.1"
0: {
id: check-option-1,
text: 1 1.1
},
1: {
id: check-option-2,
text: 2 2.1
}
list[elem.id], далее list[key] - JSON.parse(localStorage.getItem(localStorageKey)) || {}
check-option-1: "11.1"
check-option-2: "22.1"
0: {
id: id,
p: текст параграфа
},
0: {
id: id,
p: текст параграфа
},
0: {id: "id",…}
id: "id"
p: "текст параграфа"
1: {id: "id",…}
id: "id"
p: "текст параграфа"
0: {
id: id,
p: текст параграфа
},
1: {
id: id,
p: текст параграфа
}
....
и.т.д
{check-option-1: "11.1", check-option-2: "22.1"}
check-option-1: "11.1"
check-option-2: "22.1"
0: {id: "id",…}
id: "id"
p: "текст параграфа"
1: {id: "id",…}
id: "id"
p: "текст параграфа"
0: {
id: id,
p: текст параграфа
},
1: {
id: id,
p: текст параграфа
}
....
и.т.д
if (Object.keys(list).length) {
for (let key in list) {
document.getElementById(key).checked = true
modal.innerHTML += list[key]
}
}
document.addEventListener('change', evt => {
if (evt.target.matches(checkboxSelector)) {
if (evt.target.checked) {
addToList(evt.target)
} else {
delete list[evt.target.id]
}
updateModal(list)
saveChanges(list)
}
})
0: {id: "6",…}
id: "6"
image: "image"
name: "name"
price: "price"
1: {id: "7",…}
id: "7"
image: image"
name: "name"
price: "price"
{check-option-1: "11.1", check-option-2: "22.1"}
check-option-1: "11.1"
check-option-2: "22.1"
0: {id: "id",…}
id: "id"
p: "текст параграфа"
1: {id: "id",…}
id: "id"
p: "текст параграфа"
0: {
id: id,
p: текст параграфа
},
1: {
id: id,
p: текст параграфа
}
....
и.т.д
тут поможет только одно - если кто-то сделает всю работу за тебя
писать бредятины типа let if
if (localStorageKey !== null ) {
lsContent.push({
id: id,
p: paragraf
});
}