Estoy tratando de crear un botón de eliminación para eliminar filas de elementos de una tabla, pero me encuentro constantemente con un "Error de tipo no detectado: deleteArr.push no es una función". No estoy seguro de qué hacer. Aquí está el código:
//Remove buttom $(document).ready(function() { // As soon as jquery loads, load from storage // it will return null if nothing is stored yet const deletedExpenses = JSON.parse(localStorage.getItem('deletedExpenses')) || []; $('body').on('click', '.deleteButton', function(e) { e.preventDefault(); // prevent the href default // if you need to access the id... let deleteID = $(this).data('id'); $(this).closest('tr').remove(); // You first have to load from storage the array of deleted items, var deletedArr = localStorage.getItem("deletedExpenses"); // If you have nothing stored, this will return null, // And if that's the case, create new array if (!deletedArr){ deletedArr = []; } // then push to this array another ID that got deleted deletedArr.push(deleteID); localStorage.setItem('deletedExpenses', JSON.stringify(deletedArr)); })Esto establece la variable en una cadena:
var deletedArr = localStorage.getItem("deletedExpenses");Cuando establece el valor de almacenamiento local, lo codifica en JSON, por lo que debe analizarlo desde JSON al leerlo:
var deletedArr = JSON.parse(localStorage.getItem("deletedExpenses"));