Javascript 显示自定义JSON结构中的数据
使用javascript,我需要显示JSON结构中的属性-->变量值。我还需要在显示中包含相应JSON结构的变量名的类依赖项 我无法将适当的类依赖项与 属性数组Javascript 显示自定义JSON结构中的数据,javascript,html,json,Javascript,Html,Json,使用javascript,我需要显示JSON结构中的属性-->变量值。我还需要在显示中包含相应JSON结构的变量名的类依赖项 我无法将适当的类依赖项与 属性数组 { "demo": { "class": [ { "name": "class1", "attributes": [], "class": [ { "name": "cl
{
"demo": {
"class": [
{
"name": "class1",
"attributes": [],
"class": [
{
"name": "class2",
"attributes": [
{
"variable": "firstname"
},
{
"variable": "lastname"
},
{
"variable": "middlename"
}
]
}
]
},
{
"name": "class3",
"attributes": [],
"class": [
{
"name": "class4",
"attributes": [],
"class": [
{
"name": "class5",
"attributes": [
{
"variable": "city"
},
{
"variable": "state"
},
{
"variable": "country"
}
]
}
]
}
]
}
]
}
}
输出应该是
variable name class dependency
firstname :class1:class2
lastname :class1:class2
middlename :class1:class2
city :class3:class4:class5
state :class3:class4:class5
country :class3:class4:class5
我让它工作了。我创建了一个名为
define
的函数,它将返回一个对象,该对象包含JSON
var determine = function ( obj ) {
var result = {},
index = 0,
name;
getData = function ( _obj, _result ) {
var key;
if ( 'name' in _obj ) {
name += ':' + _obj.name;
}
if ( 'class' in _obj ) {
_obj.class.forEach( function ( data ) {
getData( data, _result );
});
name = '';
} else {
for ( key in _obj.attributes ) {
_result[ _obj.attributes[ key ].variable ] = name.substr( 1 );
}
}
return _result;
};
for ( var item in obj ) {
name = '';
result[ item ] = getData( obj[ item ], {} );
index++;
}
return result;
};
var markup = determine( json );
console.log( markup );
你到底有什么问题?请发布您到目前为止尝试过的内容。我使用了递归javascript方法来分离属性