日期:2014-05-16 浏览次数:20382 次
json={
'students':{
'student':{
'name':'zhangsan',
'age',11,
'address':{
'city':'beijing'
}
}
}
function _type(obj){
/// <summary>
/// 返回数据类型的小写副本
/// </summary>
/// <param name="obj">目标对象</param>
/// <returns>目标对象的数据类型的小写副本:string,date,number,array,boolean,object,regexp,function...</returns>
return Object.prototype.toString.call(obj).match(/^\[object\s(.*)\]$/)[1].toLowerCase();
}
function getNS(ns,json,named){
var keyNamed;
for(var key in json){
if(json.hasOwnProperty(key)){
keyNamed = named + '.' + key;
if(_type(json[key])=='object'){
ns[keyNamed] = '{}';//如果不想保留非值类型的结构,删除这句
getNS(ns,json[key],keyNamed);
}else{
ns[keyNamed] = _type(json[key])=='array'
? json[key].join(',')
: json[key];
};
}
};
return ns;
};
var ns=getNS({},json,"json");