JSON을 사용하여 파일에서 게임 세계에 대한 일부 데이터를 저장하려고하면 JSON 순환 참조 오류가 발생합니다. 순환 데이터 형식을 저장하는 방법이 있습니까? 또한 브라우저에서가 아니라 node.js를 실행하고 있습니다.JSON 또는 이와 유사한 원형 데이터 구조를 어떻게 든 저장할 수 있습니까?
기본적으로 시간이 지남에 따라 플레이어는 일부 유닛을 얻습니다. 이 유닛들은 플레이어 오브젝트 내부의리스트에 저장되지만, 플레이어 자신을 인수로 주므로 누가 자신의 소유자인지 알 수 있습니다. 이런 식으로 뭔가 :
Player = function()
{
this.power = 0
this.units = [new Unit(this)];
}
Unit = function(owner)
{
owner.power++;
}
순환 참조를 직렬화 할 수 없습니다. 대신 ID 대신 참조 할 수 있습니까? – Joe
이 문제를 해결하는 직렬화 라이브러리가 있습니다. https://github.com/douglascrockford/JSON-js – davin
가능한 복제본 [Javascript : 순환 참조가있는 개체를 저장하는 방법?] (http://stackoverflow.com)/questions/7420597/javascript-how-to-save-with-circular-references) – davin