window.reload = () => { var userArray = JSON.parse(localStorage.getItem("key")); } let feedback = document.getElementById("feedback"); function checkemail(userArray, email) { var i; if (userArray == null | undefined) { userArray = JSON.parse(localStorage.getItem("key")); } var person = { name: document.getElementById("nameinput").value, email: document.getElementById("emailinput").value, passowrd: document.getElementById("passwordinput").value }; let isFound = false; for (i = 0; i < userArray.length; i++) { //here is the error it still happen even after I added the if null part if (userArray != undefined) var oldemail = userArray[i].email; let newemail = document.getElementById("emailinput").value; if (newemail === oldemail) { isFound = true; i = userArray.length; return feedback.innerHTML = "email exist please log in or register with different email"; } } if (!isFound) { return storeName(person, userArray); } } function storeName(person, userArray) { if (userArray != undefined) var person = { name: document.getElementById("nameinput").value, email: document.getElementById("emailinput").value, passowrd: document.getElementById("passwordinput").value }; userArray = JSON.parse(localStorage.getItem("key")); userArray.push(person); userArray = JSON.stringify(userArray); localStorage.setItem("key", userArray); console.log(userArray); }Quiero almacenar una matriz en el almacenamiento local, la primera vez que ejecuto el código, por supuesto, la matriz está vacía y no puedo usar un bucle, por ejemplo, porque no puedo llamar (array.length). Entonces, ¿puedo decirle al compilador, por ejemplo, si la matriz es nula o indefinida, simplemente coloque la longitud en cero o asigne el valor de la matriz a una matriz vacía?
puedo hacer algo como esto?
if( userArray == null | undefined) { userArray = JSON.parse(localStorage.getItem("key")); }function checkemail(userArray, email) { if (userArray == null || typeof(userArray) == 'undefined') { userArray = []; } // rest of the code }Esto podría estar funcionando también:
userArray ??= [];