2011-09-20 8 views
0

첨부 된 속성이 data-settings 인 객체 이동을 기록하려고하는데 지금까지 일종의 JSON/Array를 설정했지만 그 중 하나는 그런 배열을 여러 개 보유하십시오.배열을 JSON 객체에 추가하는 방법

{ nPosX: newPX, nPosY: newPY, moves: [{ posX: newPX, posY: newPY, time: 0 }] }

가 어떻게 moves에 해시 배열을 밀어 않습니다

{ nPosX: newPX, nPosY: newPY, moves: [{ posX: newPX, posY: newPY, time: 0 }], [{ posX: newPX, posY: newPY, time: 5 }] }

그러나 나는 내가 만이 가지고있는 moves 또 다른 배열을 추가하기 위해 사투를 벌인거야?

감사합니다.

답변

0
el = { nPosX: newPX, nPosY: newPY, moves: [{ posX: newPX, posY: newPY, time: 0 }] } 
el.moves.push({ posX: newPX, posY: newPY, time: 5 }) 

을 제공합니다 : 각은 "이동"키에 부착 된 하나의 객체를 포함하는 두 배열을 가지고

{ nPosX: newPX, nPosY: newPY, moves: [{ posX: newPX, posY: newPY, time: 0 },{ posX: newPX, posY: newPY, time: 5 }] } 

원래 구문이 유효하지 않습니다. 유효하지 않은 JSON입니다.

참조 : http://www.json.org/

+0

감사합니다, 죄송합니다 그것이 바보 같은 질문처럼 보일지도 모르지만, 어떻게 내가 데이터의 각 세트에 액세스 할 수. – PapaSmurf

+0

언어에 따라 다릅니다. JavaScript를 가정 할 때 JSON을 "el"Object로 파싱합니다. 그런 다음 el.moves를 사용하여 "moves"배열에 액세스하십시오. 그리고 el.moves [0] .posX는 첫 번째 "moves"요소 안의 posX 값에 접근합니다. – Glenn

0

대괄호가 필요하지 않습니다. 그래서 :

moves: [ 
    { posX: newPX, posY: newPY, time: 0 }, 
    { posX: newPX, posY: newPY, time: 5 } 
] 
관련 문제