Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/473.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript:解析多级json数组_Javascript_Arrays_Json_Parsing - Fatal编程技术网

javascript:解析多级json数组

javascript:解析多级json数组,javascript,arrays,json,parsing,Javascript,Arrays,Json,Parsing,我有一个返回多级数组的asp.net web服务 使用json2.js库解析json字符串: var donnee = JSON.parse(msg.d); 第一级解析是可以的,但是第二级数组(数据)仍然是一个对象数组 ??唐尼[0] ??donnee[0]。数据 ??donnee[0]。数据[0] 而我需要一个数据数组,例如 ??唐尼[0] ??donnee[0]。数据 ??donnee[0]。数据[0] 一次解码/解析所有级别的json字符串的最佳方法是什么 致以最诚挚的问候到目前为止,我

我有一个返回多级数组的asp.net web服务

使用json2.js库解析json字符串:

var donnee = JSON.parse(msg.d);
第一级解析是可以的,但是第二级数组(数据)仍然是一个对象数组

??唐尼[0]

??donnee[0]。数据

??donnee[0]。数据[0]

而我需要一个数据数组,例如

??唐尼[0]

??donnee[0]。数据

??donnee[0]。数据[0]

一次解码/解析所有级别的json字符串的最佳方法是什么


致以最诚挚的问候

到目前为止,我还没有找到在纯数组中解码json字符串的简单解决方案。现在,我解析字符串并直接用数组替换对象

var donnee = JSON.parse(msg.d);

                for (var i in donnee) {

                    if (donnee.hasOwnProperty(i)) {

                        datas[i] = donnee[i];

                        for (var j in donnee[i]) {

                            if (donnee[i].hasOwnProperty(j)) {

                                var lev2 = donnee[i][j];

                                if (typeof lev2 == "object") {
                                    for (var k in donnee[i][j]) {
                                        var lev3 = donnee[i][j][k];
                                        datas[i].data[k] = new Array(lev3.x, lev3.y, lev3.l);
                                    }
                                }
                            }
                        }
                    }
                }

它已经被完全“解析”。JSON解析器就是这样做的,除非对象包含本身是JSON序列化对象的字符串(显然,这里不是这种情况;如果是,您将看到字符串,而不是对象或对象数组)。谢谢您的快速回复。您的意思是我需要首先将第二级序列化为字符串,然后将此字符串用作第一级的属性,然后序列化整个数据吗?不,我不是这个意思。“解析”初始JSON字符串的工作完全通过调用“JSON.parse()”完成。您必须执行的任务是遍历生成的数据结构。这个JSON来自哪里?如果您不知道数据的结构是什么,您将如何使用它?没问题,这是我的web服务。详情如下:
[[object Object],[object Object]]
[0]: {...}
[1]: {...}
{...}
_l: ""
_x: 7
_y: 25
{...}
label: "traitement formol 2"
type: "traitement"
color: "#0000CD"
data: [7,25,,7,40,formol]
[7,25,,7,40,formol]
[0]: [7,25,]
[1]: [7,40,formol]
[7,25,]
[0]: 7
[1]: 25
[2]: ""
var donnee = JSON.parse(msg.d);

                for (var i in donnee) {

                    if (donnee.hasOwnProperty(i)) {

                        datas[i] = donnee[i];

                        for (var j in donnee[i]) {

                            if (donnee[i].hasOwnProperty(j)) {

                                var lev2 = donnee[i][j];

                                if (typeof lev2 == "object") {
                                    for (var k in donnee[i][j]) {
                                        var lev3 = donnee[i][j][k];
                                        datas[i].data[k] = new Array(lev3.x, lev3.y, lev3.l);
                                    }
                                }
                            }
                        }
                    }
                }