Estoy intentando implementar una función que compruebe si la fecha y la hora que elijo ya han sido elegidas antes, si es así me da error, si no me deja seguir añadiendo el ticket. La función actual guarda opciones en el almacenamiento local, sin embargo, parece que no las recupera y me permite elegir la misma fecha dos veces.
var count = 0; function store() { let clickCounter = localStorage.getItem("clickCount"); if (!clickCounter) { localStorage.setItem("clickCount", 0); clickCounter = "0"; } clickCounter = parseInt(clickCounter); document.getElementById('inc').value = ++count; if (clickCounter == 100) { console.log("Limit reached"); return; } else { localStorage.setItem("clickCount", clickCounter + 1); } console.log("Saving"); var e = document.getElementById("time"); var time = e.options[e.selectedIndex].text; var date = document.querySelector("input").value; localStorage.setItem(JSON.stringify(time), date); console.log(localStorage); if (!localStorage.getItem("history")) { localStorage.setItem("history", "[]"); } const history = JSON.parse(localStorage.getItem("history")); history.push({ [JSON.stringify(time)]: date }); localStorage.setItem("history", JSON.stringify(history)); console.log(localStorage.getItem("history")); } function myDate(date) { var today = new Date(); var newDate = new Date(date); var nextWeek = new Date(); var pastWeek = new Date(); nextWeek.setDate(nextWeek.getDate() + 7); pastWeek.setDate(pastWeek.getDate() - 7); const dateInput = document.getElementById('date'); if (newDate < pastWeek || newDate > nextWeek) { document.getElementById("time").disabled = true; console.log("error") return; } else { document.getElementById("time").disabled = false; } }