Javascript 在JSON对象上迭代
在json对象中进行迭代时遇到一些问题。 我目前正在将某个网页的表属性保存在cookie中。 cookie的值是我序列化的对象数组。 具有2个条目的数组的典型值如下所示:Javascript 在JSON对象上迭代,javascript,arrays,json,cookies,Javascript,Arrays,Json,Cookies,在json对象中进行迭代时遇到一些问题。 我目前正在将某个网页的表属性保存在cookie中。 cookie的值是我序列化的对象数组。 具有2个条目的数组的典型值如下所示: cookieValue=["{ "PageID": "1391", "PageSize": "100"}", "{ "PageID": "2341", "PageSize": "50"}"] 我的问题是现在在这个数组中迭代。我希望能够检查是否有任何重复条目来更新其页面大小(如果适用),或者在用户返回同一页面时读取该条目以设置
cookieValue=["{ "PageID": "1391", "PageSize": "100"}", "{ "PageID": "2341", "PageSize": "50"}"]
我的问题是现在在这个数组中迭代。我希望能够检查是否有任何重复条目来更新其页面大小(如果适用),或者在用户返回同一页面时读取该条目以设置页面大小
到目前为止,我已经试过了:
for (var key in cookieValue) {
if(cookieValue.hasOwnProperty(key) ){
console.log(key + " -> " + cookieValue[key]);
}
}
这给了我一个输出,比如:
0 -> { "PageID": "1391_tabela", "PageSize": "100"}
1 -> { "PageID": "1391_tabela", "PageSize": "50"}
2 -> { "PageID": "1391_tabela", "PageSize": "10"}
我的问题是如何访问每个条目中的PageID值
提前谢谢我不确定我是否理解正确,但我认为你应该使用 cookieValue[键][页ID] 一起:
for (var key in cookieValue) {
if(cookieValue.hasOwnProperty(key) ){
console.log(key + " -> " + cookieValue[key] + " -> " + cookieValue[key]["PageID"]);
}
}
如果您只想访问每个条目中的PageId值,可以在此处查看示例:
var cookieValue=[{ "PageID": "1391", "PageSize": "100"}, { "PageID": "2341", "PageSize": "50"}];
for (key in cookieValue) {
alert(cookieValue[key]["PageID"]);
}
使用javascript数组操作数据以简化代码 一种适合您的方法: 使用以下命令将JSON转换为javascript数组: var mycookieArray=JSON.parsecookieValue 通过以下方式对其进行迭代: 对于字符串s:mycokie数组 { console.logs.PageID; }
似乎需要通过PageId获取对象。这里有一个函数
function getPageById(pageId) {
for (var pageObj in cookieValue) {
if (pageObj.PageId === pageId)
return pageObj;
}
}
cookieValue[key][PageID]?有点像-它到底是什么?您提供的是无效的JavaScript。一周后,您没有提供任何进一步的信息,也没有接受任何答复。