使用递归对任意json解析

(function(angular){
var app = angular.module('app', []);


app.controller('MainCtrl', [
'$scope', '$http', function($scope, $http) {

var url ="http://localhost:8080/test/getData";
$http.get(url)
   .success(function (datas) {
    var space="|";
    var Objs = eval(datas);
    myparseJson(Objs,space);
   });


function myparseJson(datas,space){
if(isJson(datas)){
for(key in datas){
var value = datas[key];
console.info(space + key+":");
var tempspace = space+"      |";
myparseJson(value,tempspace);
}
}else if(isArray(datas)){
for(index in datas){
var value = datas[index];
var tempspace = space + "      |";
myparseJson(value,tempspace);
}
}else if(isNull(datas)){
console.info(space + 'nulltt');
return '';
}else if(datas == undefined){
console.info(space + 'undefinedtt');
return '';
}else{
console.info(space + datas);
return datas;
}
}

function isJson(obj){
var isjson = typeof(obj) == "object" && Object.prototype.toString.call(obj).toLowerCase() == "[object object]" && !obj.length; 
return isjson;
}
function isArray(obj){
var isarray = typeof(obj) == "object" && Object.prototype.toString.call(obj).toLowerCase() == "[object array]" && obj.length;
return isarray;
}
function isNull(obj){
var isnull = typeof(obj) == "object" && Object.prototype.toString.call(obj).toLowerCase() == "[object null]"; 
return isnull;
}





}]);

})(window.angular);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值