【问题标题】:Append (key value) data to existing data in localstorage using jquery使用 jquery 将(键值)数据附加到本地存储中的现有数据
【发布时间】:2020-11-24 04:44:29
【问题描述】:

我正在尝试比较两个 id 并将一个属性附加到现有的本地存储数据中。 在 for 循环中。

这里是codepen 显示示例数据和逻辑。

我只是想检查一下 var allcategorydatawithlevelidvar category_idcategorydata &如果这两个匹配我想追加 allcategorydatawithlevelcategorydata 的 level 属性。 请查看包含我尝试过的数据示例和逻辑的 Codepen。

【问题讨论】:

  • 您的对象(或带有对象的数组)似乎是从控制台复制和粘贴的,因此它们在语法上不正确。请修复您的代码并使其正常运行。
  • 好的,他们有什么办法解决这个问题吗?
  • 有。查看this thread 了解如何在 chrome 中从控制台复制对象。
  • 谢谢你我更新了codepen
  • 请检查codepen

标签: javascript jquery


【解决方案1】:

希望对你有所帮助:

  var categorydata = [
        { category_id: 2, name: "Default Category", position: 1 },
        { category_id: 3, name: "Clothing", position: 14597 },
        { category_id: 6, name: "Brands", position: 1 },
        { category_id: 8, name: "What's New", position: 1011 },
        { category_id: 12, name: "Dresses", position: 4456 },
        { category_id: 128, name: "Current Mood", position: 189 },
        { category_id: 138, name: "Mini", position: 13078 },
        { category_id: 630, name: "Kandi - Rave Clothing", position: 264 },
        { category_id: 1130, name: "Char Test Category", position: 99 },
        { category_id: 2443, name: "Sets", position: 163 },
        { category_id: 2657, name: "Club Exx Festival", position: 208 }
    
    ];
    var allcategorydatawithlevel = [
        { id: 1, level: 1 },
        { id: 2, level: 5 }
    ]

  var category = [];
    
    for (i = 0; i < allcategorydatawithlevel.length; i++) {
        for (x = 0; x < categorydata.length; x++) {
            if (allcategorydatawithlevel[i].id == categorydata[x].category_id) {
                category.push(allcategorydatawithlevel[i].level);
            }
        }
    }
    localStorage.setItem("category", JSON.stringify(category));
    console.log(JSON.stringify(category));

您也可以使用以下代码:

  allcategorydatawithlevel.forEach((item, index) => {
        categorydata.forEach((key, val) => {
            if (item.id === key.category_id) {
                category.push(item.level);
            }
        })
        localStorage.setItem("category", JSON.stringify(category));

    })
    console.log(JSON.stringify(category));

【讨论】:

  • 让我检查一下上面的答案。
猜你喜欢
  • 2018-09-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-07
  • 2013-10-26
  • 1970-01-01
相关资源
最近更新 更多