2014-12-16 4 views
-2

다음 변수에 저장되는 값은 json 구조입니다. 그러나 값은 json에 저장되지 않습니다. 아래에 주어진 코드.json을 만들 수 없습니다

var ReportSelected = []; 
var PeopleSelected = []; 
var FilterSelected = []; 
var summaryJson = { 
    "reportselectedjson" : [], 
    "PeopleSelected" : [], 
    "FilterSelected" : [] 
}; 

for (var int = 0; int < ReportSelected.length; int++) { 
    summaryJson.reportselectedjson.push(ReportSelected[int]); 
     } 
for (var int2 = 0; int2 < PeopleSelected.length; int2++) { 
    summaryJson.PeopleSelectedjson.push(PeopleSelected[int2]); 
} 
for (var int3 = 0; int3 < FilterSelected.length; int3++) { 
    summaryJson.FilterSelectedjson.push(FilterSelected[int3]); 

} 
console.log(JSON.stringify(summaryJson)); 

이것은 json에서는 아무런 가치가 없습니다.

+0

'ReportSelected','PeopleSelected','FilterSelected'이 비어 따라서 당신은'{ "reportselectedjson"얻을 : [] "PeopleSelected을": [] , "FilterSelected": []}'을 클릭하십시오. –

+1

'Selected'배열은 모두 비어 있으므로 길이가 0이므로 for 루프가 실제로 push 문에 들어 가지 않습니다. ReportSelected 등의 배열 안에 항목이 있어야합니다. – quantumtremor

+0

그냥 참조 할 수있을 때 왜 배열을 반복해야하는지 잘 모르겠습니다 .... – epascarello

답변

0

PeopleSelected, ReportSelected 및 FilterSelected 배열이 모두 비어 있습니다. 그래서 당신은 summaryJson에서 아무것도 얻지 못할 것입니다.

0

예, 모든 사람이 문제를 선택했습니다. 배열은 비어 있습니다 ... 코드를 약간 수정 한 버전입니다.

var ReportSelected = ['one','two','three'], 
    PeopleSelected = ['test1','test2','test3'], 
    FilterSelected = ['filt1','filt2','filt3'], 
    summaryJson = { 
     "Reportselectedjson" : [], 
     "PeopleSelectedjson" : [], 
     "FilterSelectedjson" : [] 
    }; 

for (var int = 0; int < ReportSelected.length; int++) { 
    summaryJson.Reportselectedjson.push(ReportSelected[int]); 
} 

for (var int2 = 0; int2 < PeopleSelected.length; int2++) { 
    summaryJson.PeopleSelectedjson.push(PeopleSelected[int2]); 
} 

for (var int3 = 0; int3 < FilterSelected.length; int3++) { 
    summaryJson.FilterSelectedjson.push(FilterSelected[int3]); 

} 

alert(JSON.stringify(summaryJson)); 

A는 여기 JSFiddle 링크입니다 - http://jsfiddle.net/3xajv687/

관련 문제