Para retirar un elemento de un array, primero, debes de utilizar el método
$.inArray
de jQuery (o
indexOf
que es un método nativo de JavaScript) para localizar al elemento dentro del array y luego debes de usar el método
splice
para retirarlo.
Un ejemplo:
Código Javascript
:
Ver originalvar array = [5, 3, 2, 8],
posicion = $.inArray(3, array);
//Si el 3 está en el array
if (posicion > -1){
//Lo elimino del mismo
array.splice(posicion, 1);
}
El método
$.inArray
(así como
indexOf
), devuelve la posición en el array del elemento buscado o -1 si no está, entonces, si la posición devuelta es mayor a -1, quiere decir que existe en el array y con el método
splice
, indico la posición del elemento a eliminar y la cantidad de elementos que se eliminarán a partir de dicha posición. Como solo deseo eliminar un elemento, coloco 1.
Una vez que hayas realizado esto, procedes a guardar la información, tal y como lo hice en el ejemplo anterior.
Para el reordenamiento, toma todo el contenido de la lista, colócalo dentro de un array y reemplázalo en el array original, de esta forma, guardarás el contenido en la forma en que quedó ordenada.
Código Javascript
:
Ver original//Luego del reordenamiento
var reemplazo = [$("#list").html()];
//Reemplazo el contenido
datos.contenido = reemplazo;
//Y lo guardo
localStorage.lista = JSON.stringify(datos);
Saludos