LocalStorageに保存した配列のうち、特定のIDが含まれる要素のオブジェクトだけを削除しようとしています。
様々なサイトを参考にしまして以下のようなコードを書いてみましたが、結果が「undefined」となってしまいまして、どのようにしたら良いか分からずにおります。
LocalStorageには配列をJSONで保存していますので、
(1)LocalStorageからJSONの配列を取得する
(2)HTML上にあるビデオIDを取得する
(3)ビデオIDと一致する要素を検索する
(4)そのオブジェクトを削除する?
(5)JSONにしてLocalStorageに保存する
という流れを考えてみましたが、(5)のLocalStorageに保存された値がundefinedとなり、うまくいきません。
こちらにつきまして、問題点が分かる方、よろしくお願いいたします。
//LocalStorageの内容 "data":[ { "videoId":"動画ID 1", "title":"動画タイトル 1" }, { "videoId":"動画ID 2", "title":"動画タイトル 2" } ] //JavaScript var array = JSON.parse(localStorage.getItem("storage")); // (1) var videoId = $('#video').children('.video_id').text(); // (2) function removeById(array, videoId) { // (3) for (var i = array.data.length - 1; i >= 0; i--) { if (array.data[i].videoId === videoId) { array.data.splice(i, 1); } } } removeById(array, videoId);// (4) localStorage.setItem("storage", JSON.stringify(removeById)); //(5)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/05/06 06:02
2017/05/06 06:13
2017/05/08 02:49