const friends = ["john","peter","bob"]; localStorage.setItem("friends", JSON.stringify(friends)); const values = JSON.parse(localStorage.getItem("friends")); console.log(values[2]); // console.log(values[1]); // console.log(values[2]); let fruits; console.log(fruits); if (localStorage.getItem('fruits')) { fruits = JSON.parse(localStorage.getItem('fruits')); } else { fruits = []; } console.log(fruits); fruits.push("apple"); fruits.push("orange"); localStorage.setItem("fruits", JSON.stringify(fruits));¿Por qué la primera matriz se comportará correctamente en Chrome, donde puedo verificar claramente la consola y la aplicación desde dev.tools, pero cuando trato de hacer una matriz vacía y presiono diferentes valores fx "apple" y "orange" no puedo? Mi consola dice que el error está en la declaración "si", pero no entiendo por qué. ¿Alguna idea?
Creo que la respuesta está en las comillas. La sintaxis JSON es muy estricta y requiere el uso de comillas dobles. Cambie todas sus comillas simples en su declaración if a comillas dobles y vea si eso soluciona su problema.