Javascript 如何使用jquery解析读取的json元素
我必须在我的移动应用程序中创建购物车系统,我想存储id和产品数量,id应该是我数组的键(用于修改产品数量),尝试使用object而不是数组,但我得到错误:当我尝试读取json变量时,undefined不是一个函数 通过JSON.stringify(cart) 我的购物车代码如下Javascript 如何使用jquery解析读取的json元素,javascript,jquery,json,Javascript,Jquery,Json,我必须在我的移动应用程序中创建购物车系统,我想存储id和产品数量,id应该是我数组的键(用于修改产品数量),尝试使用object而不是数组,但我得到错误:当我尝试读取json变量时,undefined不是一个函数 通过JSON.stringify(cart) 我的购物车代码如下 var cart = []; var produit = {}; produit['qte'] = $('.'+id_prd).text(); produit['id_produit'] = id_prd; cart[
var cart = [];
var produit = {};
produit['qte'] = $('.'+id_prd).text();
produit['id_produit'] = id_prd;
cart[id_prd] = produit;
window.sessionStorage["cart1"]= JSON.stringify(cart);
还我
{"7":{"qte":"1","id_produit":7},"8":{"qte":"1","id_produit":8}}
当我试图用
var parsed = $.parseJSON(window.sessionStorage["cart1"]);
我得到错误“未定义不是函数”
当使用triying读取json时
var i=0;
for (k in parsed) {
var k_data = parsed[k];
k_data.forEach(function(entry) {
alert(entry);
ch+=entry.id_produit;
if(i<parsed.length-1)
ch+= ',';
if(i==parsed.length-1)
ch+=')';
i++;
});
}
var i=0;
for(已解析的k){
var k_data=已解析[k];
k_data.forEach(函数(条目){
警报(输入);
ch+=入口id\u产品;
如果(i您可以尝试以下方法:
<script type="text/javascript">
var finalArr = new Array();
var dataArr = new Array();
dataArr = window.sessionStorage["cart1"];
if (JSON.parse(dataArr).length > 0) {
for (var i = 0; i < JSON.parse(dataArr).length; i++) {
finalArr.push((JSON.parse(dataArr))[i]);
}
}
</script>
var finalArr=新数组();
var dataArr=新数组();
dataArr=window.sessionStorage[“cart1”];
if(JSON.parse(dataArr.length>0){
for(var i=0;i
您不需要jQuery来完成此操作。您用于stringify的同一个JSON对象具有解析函数:
var parsed = JSON.parse(window.sessionStorage["cart1"]);
如果这种情况仍然存在,那么另一个未定义的对象可能有问题。问题在于您使用的是k_数据。forEach(函数(条目)
但是forEach用于数组,k_数据只是一个简单的javascript对象
尝试更改:
k_data.forEach(函数(条目){
为此:
$(k_数据)。每个(函数(条目){
更重要的是,如果JSON总是与您发布的结构相同,我认为每个函数都不是必需的,也许这就是您所寻找的方式:
var i=0;
var ch = "(";
for (k in parsed) {
var k_data = parsed[k];
alert(k_data);
ch+=k_data.id_produit;
ch+= ',';
i++;
}
ch = ch.substring(0, ch.length - 1) + ")";
JSON.parse(jsonString)
删除id_produit前面的双引号这是一个输入错误我将编辑我的问题是“parse”和“parse1”同一个变量?@chepe263是的这也是一个输入错误,我真的很困惑我得到了这个对象{7:Object,8:Object}7:对象8:对象原型:对象CanAny1电话为什么你否决了我的答案?它怎么没用?谢谢你这就是我要找的