从复杂的json对象创建javascript数组
可能重复:
JavaScript“For ... in”与数组
我对JSON相当陌生。 我已经在stackoverflow上搜索了一个答案,但有点困惑,所以我不知道我是否偶然发现了一个解决方案。 所以,我决定发布我的代码和需求,希望能够申请一个解决方案。
如果已经有解决方案存在,我提前道歉,只能想象我只是不明白我在看什么。
我有一个json对象,看起来像这样:
{
"0": [
{
"uguid": "11111-11111-11111",
"username": "username",
"password": "",
"first_name": "User1",
"last_name": "Name1",
"title": "title here",
"group_guid": "g0001",
"force_pw_reset": "f",
"permissions": [
[
"p1",
"p2",
"p3",
"p4",
"p5"
]
],
"active": "t",
"t_access": [
[]
],
"i_access": [
[]
],
"c_access": [
[]
],
"class_name": "class name",
"method": "method name"
}
],
"1": [
{
"uguid": "22222-22222-2222",
"username": "username2",
"password": "",
"first_name": "User2",
"last_name": "Name2",
"title": "",
"g_guid": "g0002",
"force_pw_reset": "f",
"permissions": [
[
"p1",
"p2",
"p3",
"p4",
"p5",
"p6"
]
],
"active": "t",
"t_access": [
[]
],
"i_access": [
[]
],
"c": [
[
"c0001"
]
],
"class_name": "class name",
"method": "method name"
}
],
"2": [
{
"u_guid": "33333-33333-33333",
"username": "username3",
"password": "",
"first_name": "User3",
"last_name": "Pass3",
"title": "",
"gguid": "g0003",
"force_pw_reset": "f",
"permissions": [
[
"p1",
"p2",
"p3"
]
],
"active": "t",
"t_access": [
[
"t0001"
]
],
"i_access": [
[]
],
"c_access": [
[]
],
"class_name": "class name",
"method": "method name"
}
]
}
我想要做的就是遍历这个(或任何)json并创建一个数组。 我需要能够递归迭代时/需要时。 另外,希望解决方案能够处理传递给函数的任何json对象。
更新:我想我应该提到我想创建一个JavaScript数组,如果这有什么区别。 另外,我正在使用json字符串并使用来自douglas crockford的json_parse()来获取对象。 我想采取该对象(显示)并创建JavaScript数组。
如果你想转换一个对象
obj = {
"0": ...,
"1": ...,
...
}
到一个数组,我建议这样做:
var a = [];
for (var i=0; typeof obj[i] != 'undefined'; i++) a[i] = obj[i];
链接地址: http://www.djcxy.com/p/70029.html