2016-10-20 3 views
2

JSON의 변화를 동적으로 분석하는 방법 I 동적 아래 예AngularJS와

예 1에서와 같이 JSON 변화 가지고

"Flower":{ 
     "color": "red"  
} 

예 2

"Flower":{ 
     "color": "red" , 
     "seasonal": "yes"  
} 

예 3

"Flower":{ 
     "color": "red" , 
     "seasonal": { 
       "seasons":{ 
         "winter": "yes", 
         "summer" : "no" 
         }   
        }  
      } 

위의 예제 출력은 다음과 같아야합니다.

example1 : color:red 
example2 :color:red,seasonal:yes 
example3: color:red,seasonal.seasons.winter:yes,seasonal.seasons.summer:no 

문제는 매번 나오는 것을 모릅니다. 출력 형식이어야합니다. 나는 각도

+2

구조가 무엇이 될지 전혀 모른다면 재귀를 사용할 수 있습니다. – nikjohn

답변

1

변수는 객체 나 문자열 인 경우 당신에게 말할 것 같은 isObject 및 isString 등의 기능을 제공 :(자바 스크립트에서이 로직의 일부 조각이 필요합니다.

당신은 객체의 속성을 반복 할 수 있습니다 그리고 그 다음 해당 개체의 속성을 재귀 수있는 객체의 경우. 다른 단지를 인쇄. 속성이 객체 나 문자열 여부를 확인 아래 확인하십시오.

$scope.iterate = function(object) { 
if (!angular.isObject(object)) 
    return object; 
var opt = ""; 
for (var property in object) { 
    if (object.hasOwnProperty(property)) { 
    opt = opt + property + " - " + $scope.iterate(object[property]) + " "; 
    } 
} 
return opt; 
} 

또한이 바이올린 좀 걸릴 수 있습니다 here, 위 코드의 작동 해결책이 있습니다.

+0

고마워요 톤 pratik – Sarah

+0

@ Sarah, 당신은 환영합니다 –