JSON 개체를 사용하는 것에 상당히 익숙해 보입니다.반 복합체 JSON 객체에 값을 어떻게 추가합니까?
Array
(
[status] => success
[id] => 1
[name] => Zone 1
[description] => Awesome zone deze..
[tiles] => Array
(
// Column for the tile grid
[0] => Array
(
// Row for the tile grid
[0] => Array
(
[tileID] => 1
[rotation] => 0
)
[1] => Array
(
[tileID] => 1
[rotation] => 0
)
// Etc..
)
[1] => Array // etc.. etc..
)
)
내 HTML5 캔버스 게임 등각 그리드를 렌더링이 개체를 사용하여 :
나는이 배열에서 변환 된 JSON 객체를 가지고있다. 지도 편집기를 만들고 맵에 타일을 더 추가하려면이 json 객체에 값을 추가해야합니다.
이 내가 PHP에서 어떻게 할 것입니다 :
mapData[column][row] = array(
'tileID' => 1,
'rotation' => 0
);
그래서 제 질문은, 어떻게 자바 스크립트에서 JSON 객체와이를 달성 할입니까?
미리 감사드립니다.
닉
내가 오류로 실행 한
업데이트 :
can't convert undefined to object
mapDataTiles[mouseY][mouseX] = { tileID: editorSelectedTile, rotation: 0 };
이 난 후 JSON 개체에 새 타일을 저장 &을 클릭에 사용하는 코드입니다. 처음에는 내 매개 변수의 하나가 '정의되지 않은'되었더라도 나는, 그래서 난 콘솔에 그 기록하지만 그들은 .. 완벽하게
// If there is already a tile placed on these coordinates
if(mapDataTiles[mouseX] && mapDataTiles[mouseX][mouseY])
{
mapDataTiles[mouseX][mouseY]['tileID'] = editorSelectedTile;
}
// If there is no tile placed on these coordinates
else
{
mapDataTiles[mouseX][mouseY] = { tileID: editorSelectedTile, rotation: 0 };
}
내 변수
을 나왔다가 다음 값 또한MouseX: 5
MouseY: 17
tileID: 2
기묘한 사실, 일부 좌표의 경우 실제로 작동하고 배열에 새 데이터를 저장합니다.
UPDATE 시행 코딩 오류의 몇 시간 후 2
나는 해결책을 마련했습니다!
어쨌든 모두의 도움에 감사드립니다!
궁금하신 분은 내 코드를 기쁘게 보내주십시오. 지금까지 내가 가지고있는 것은 무제한의 타일을 위해 어떤 방향 으로든 세계지도를 확장 할 수있는 능력입니다. : D
cya
나는 그것을 시도했지만 이상한 오류가 발생했습니다. 너무 빨리 답변 주셔서 감사합니다! –
열 또는 행 배열이 실제로 존재하는지 확인해야합니다. 동적으로 만들어지지 않습니다."else"절을 변경하여 배열 존재 여부를 확인하고, 존재하지 않으면 지정된 열/행에 배열을 만듭니다. – Saebekassebil