2016-11-09 3 views
0

이상한 문제가 있습니다. 이해가되지 않습니다. 자바 스크립트에서 JSON 객체를 만들고 싶습니다. 내 예제 코드 :자바 스크립트로 JSON 만들기

$(document).ready(function(){ 

var myJson = new Object(); 
var data = new Object(); 
myJson.items = []; 

data.name = 'test'; 

for (i = 0; i < 5; i++){ 
    data.counter = i; 
    myJson.items.push(data); 
} 
console.log(JSON.stringify(myJson)); 

}); 

출력 :

{"items":[{"name":"test","counter":4},{"name":"test","counter":4},{"name":"test","counter":4},{"name":"test","counter":4},{"name":"test","counter":4}]} 

JSON에서 카운터 변수는 항상 가치있는 이유는 4 ??????

당신은 항상 동일한 데이터에서 작업
+0

변경하려는 속성은 항상 'data.counter'와 같습니다. – Teemu

답변

4


대신

var myJson = new Object(); 
 

 
myJson.items = []; 
 

 

 

 
for (i = 0; i < 5; i++){ 
 
    var data = new Object(); 
 
    data.name = 'test'; 
 
    data.counter = i; 
 
    myJson.items.push(data); 
 
} 
 
console.log(JSON.stringify(myJson));

+0

객체를 생성하고 배열에 푸시하면''JSON.stringify''도 옵션입니다. – Crowes

+0

아 ... 무슨 실수 야 ... 물론 ... 바보 같은 ... –

1

위를, 내부 루프 var data = new Object();의 새로운 객체를 생성 언급 루프에서 데이터 객체 초기화를 넣어 시도 객체 도 넣어 data.name = 'test'; for for loop

관련 문제