Можно ли как-то сохранить циклические структуры данных с помощью JSON или чего-то подобного? - PullRequest
0 голосов
/ 27 сентября 2011

Когда я пытаюсь сохранить некоторые данные об игровом мире в файле с помощью JSON, я получаю эту хорошую ошибку круговой ссылки JSON.Есть ли способ сохранить циклические типы данных?Кроме того, я запускаю это с node.js, а не внутри браузера.

По сути, со временем игрок получает несколько юнитов.Эти юниты сохраняются в списке внутри объекта игрока, но в качестве аргумента приводятся сам игрок, чтобы они знали, кто их владелец.Как то так:

Player = function()
{
    this.power = 0
    this.units = [new Unit(this)];
}

Unit = function(owner)
{
    owner.power++;   
}

1 Ответ

1 голос
/ 27 сентября 2011

@ Бэйн, в ответ на то, как включить цикл. Js

Поместите его в папку lib для своего проекта и включите его через тег script, если вы делаете это на стороне клиента.

На стороне сервера вы можете включить код в файл, в котором вам нужна циклическая ссылка; это простой, но на самом деле неправильный способ работы. Лучше сделать это в виде модуля, чтобы узнать подробности, прочитайте этот учебник на howtonode.org .

Ваша лучшая ставка в целом - рефакторинг, чтобы вам не понадобилось циклическое указание.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...