2013-02-14 4 views
1

JSON 객체에 반환 된 값을 사용하여 jQuery에서 연관 배열을 만들고 싶습니다. JSON 개체는 동적으로 생성된다JSON에서 jQuery 배열 만들기

I의 값을 사용하는 형식의 결합 배열을 만들
[{"name":"key1","value":"value1"},{"name":"key2","value":"value2"},{"name":"key3","value":"value3"},{"name":"key4","value":"value4"}] 

가 JSON에 반환

aResult = {key1 : 'value1', key2 : 'value2', key3 : 'value3', key4 : 'value4'}; 

를 I는 JSON 객체를 반복 할 때 현재 I 수 콘솔

$.each(jData, function(k, v) { 
    if (v.name.toLowerCase().indexOf("answer") >= 0) { 
     name = v.name; 
     value = v.value; 
     console.log(name + ' : ' + value); //returns the structure I wish 
    }; 

}); 

에서 원하는 배열 구조를 볼하지만 루프에서이 코드를 추가 할 때

배열을 만들
var aResult = {name:value} 

그것은 내가 무엇을 놓치고 [object Object]

반환? 어떻게해야합니까? 어떤 도움을 주셔서 감사합니다.

+1

aResult = {}; aResult [name] = value; 또는 그와 비슷한 것을 사용해보십시오. – Passerby

+0

그게 효과가있다. 고맙습니다. – user988544

답변

4

이 그것을해야

var obj = {}; 
$.each(data, function(i, v){ 
     obj[v.name] = v.value 
    }); 
console.log(obj) 

데모 : 당신이 JSON 변환 할 필요

$.parseJSON(); 

사용하여 JSON을 구문 분석하는 데 필요한 모든의 Fiddle

+0

완벽하게 작동했습니다. 고맙습니다. – user988544

0

우선 객체하려면 그 후 사용해보십시오.

$.each(data, function(n, val) { 
    console.log(name + ': name = ' +val.name + ' value = ' + val.value); 
    }); 
+0

저는 이미 JSON을 파싱했습니다. 콘솔에서 구조를 얻고 있습니다. 배열을 만드는 방법을 모르겠습니다. – user988544

+0

글쎄 내 질문을 읽으면 이미이 부분을하고있는 것을 볼 수있을 것이다. – user988544