【问题标题】:Remove Local Storage JSON Object & Rebuild Array移除本地存储 JSON 对象并重建阵列
【发布时间】:2016-04-25 18:07:35
【问题描述】:

我正在努力完成从 LocalStorage 中删除项目的任务……这是我的 LocalStorage 数据 JSON。

{
"1461569942024" : 
{"t_id":1461569942024,"t_build_val":"PreBuild1","t_project_val":"18"},
"1461570048166" : 
{"t_id":1461570048166,"t_build_val":"PreBuild2","t_project_val":"17"}
}

这是我想要做的:

function removeItem(array, value) {
    var idx = array.indexOf(value);
    if (idx !== -1) {
        array.splice(idx, 1);
    }
    return array;
}

var newData = removeItem(localStorage['data'], '1461569942024');

我想根据对象键删除 na 对象,例如:1461570048166 并将整个数组重新保存到 LocalStorage。

谢谢

【问题讨论】:

  • delete somevar['1461570048166'].
  • splice 用于数组并且您有一个对象,请改用 delete。

标签: javascript json object local-storage


【解决方案1】:

试试这个代码

var json = {
    "1461569942024": {
        "t_id": 1461569942024,
        "t_build_val": "PreBuild1",
        "t_project_val": "18"
    },
    "1461570048166": {
        "t_id": 1461570048166,
        "t_build_val": "PreBuild2",
        "t_project_val": "17"
    }
};

function deleteItem(input, key) {

    delete input[key];

    return input

}

localStorage.setItem("localStore", JSON.stringify(json));

localStorage.setItem("localStore", JSON.stringify(deleteItem(JSON.parse(localStorage.getItem("localStore")), '1461570048166')));

JSON.parse(localStorage.getItem("localStore"));

【讨论】:

  • 您遇到了什么错误。它工作正常,试试这个小提琴“jsfiddle.net/8mc3woa4/2”刚刚在删除键“1461569942024”后添加警报
  • 我所做的是..1.) 声明 Json 2.) 将其存储在本地存储中 3.) 从本地存储中检索 4.) 删除一个元素 5.) 存储回本地存储 6 .) 再次从本地存储中获取数据以检查该项目是否真的从本地存储中删除....希望这也是您的要求..
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-08-05
  • 1970-01-01
  • 2019-12-03
  • 2018-11-07
  • 1970-01-01
  • 2018-07-30
  • 2023-03-24
相关资源
最近更新 更多