gpt4 book ai didi

javascript - 返回 localStorage 数组中的最后一个元素

转载 作者:行者123 更新时间:2023-11-28 07:40:03 25 4
gpt4 key购买 nike

我无法从 localStorage 中的数组中获取任何精确的值或名称。

这是我的本地存储: JSON Result

我想要做的是检索最后一项并将变量设置为最后一项(ReportReference)中第一项的值。原因是检查其中是否已经存在具有与 ReportReference 相同值的项目。因此,不要保存我正在保存的表单的另一个副本,而只是再次更新字段以保存回本地存储。

下面的方法是“保存以供以后使用”按钮,它只是将值保存到数组中。

// Add to local Storage
$('.SaveStore').on('click', addStorage);

function addStorage(e) {
e.preventDefault();
var keyIndex = localStore.getValue(REPORTS_KEY);

console.log(keyIndex);
for (var i = 0; i < keyIndex.length; i++) {
//console.log(keyIndex[i]);
for (var key in keyIndex[i]) {
//console.log(keyIndex[i][key]);
var test = keyIndex[i][key];
console.log(test.value);
}
}

var form = $('form').serializeArray();
//console.log(form);
var reports = localStore.getValue(REPORTS_KEY);
if (reports == null) {
reports = [];
}
reports.push(form);
localStore.setValue(REPORTS_KEY, reports);
clearFormElements();
}

console.log(test.value)会给我所有的结果,但无论我尝试什么似乎都没有给我任何结果。

Console.log(test[0].value);  // Returns value undefined

Result from console

我看过这篇文章并尝试按照他们所说的去做,但没有任何运气:localstorage: Get specific localstorage value of which contains many items

因为我无法检索我想要传递给函数的项目。

最佳答案

试试这个:

for (var i = 0, formLen = keyIndex.length; i < formLen; i++) {
var serializedForm = keyIndex[i];
for (var j = 0, fieldsLen = serializedForm.length; j < fieldsLen; j++) {
var field = serializedForm[j];

if (field.name == "ReportReference" && field.value == "bbb") {
console.log(keyIndex[i][j]);
}
}
}

关于javascript - 返回 localStorage 数组中的最后一个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28173725/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com