Как сделать массив JSON внутри массива - PullRequest
1 голос
/ 15 февраля 2012

первый пост здесь когда-либо

Я пытаюсь реплицировать этот вид JSON-объекта, чтобы я мог сохранить его внутри localStorage с помощью stringify:

Я хочу иметь возможность создавать новое noteState внутри истории всякий раз, когда происходит событие, но не знаю, как это сделать ..

var history = {
    "noteState1": [
        {created: new Date(),
        modified: new Date(),
        left: "100",
        top: "200",
        text: "hello"},

        {created: new Date(),
        modified: new Date(),
        left: "150",
        top: "250",
        text: "new"},

        {created: new Date(),
        modified: new Date(),
        left: "200",
        top: "300",
        text: "world"}
    ], 
    "noteState2": [
        {created: new Date(),
        modified: new Date(),
        left: "100",
        top: "200",
        text: "hello"},

        {created: new Date(),
        modified: new Date(),
        left: "150",
        top: "250",
        text: "new"},

        {created: new Date(),
        modified: new Date(),
        left: "200",
        top: "300",
        text: "world"}
    ]
}

как я могу создать новый элемент с одним массивом в истории?

Ответы [ 3 ]

5 голосов
/ 15 февраля 2012

Вы не изменяете строку json - это слишком рискованно. Вместо этого вы конвертируете его обратно в собственный массив / объект javascript, используете для него обычные операторы типа push / pop массива, а затем конвертируете обратно в строку json.

0 голосов
/ 15 февраля 2012

прежде чем что-либо делать, преобразуйте эти строки json в объекты.Сделав это, вы легко можете просто добавить пространства имен в историю следующим образом:

history.noteStateX = { x:1,y:2 };

, и теперь история обладает этим свойством так же, как и другими.

0 голосов
/ 15 февраля 2012

Почему вы не можете просто сохранить свою историю как массив объектов, а затем добавить новый noteState?Если вы хотите сохранить свой массив, просто вставьте каждое из noteStates в массиве history в объект JSON.

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