Я пытаюсь сохранить данные в файл JSON, первое сохранение проходит нормально, второе сохранение нарушает JSON.Вот как выглядит мой массив (например, упрощенно):
var myArray1 = new Array ({
Ex1 : "Ex1",
Ex2 : "Ex2",
Ex3 : "Ex3"
});
Я сохраняю это в JSON, который возвращает действительный json, я читаю его и пытаюсь сохранить другой массив, подобный этому, поверх этого:
var myArray2 = new Array ({
Ex4 : "Ex4",
Ex5 : "Ex5",
Ex6 : "Ex6"
});
Я пытался использовать concat, который создает это в консоли Chrome:
0:
Ex1: "Ex1"
Ex2: "Ex2"
Ex3: "Ex3"
__proto__: Object
1:
Ex4: "Ex4"
Ex5: "Ex5"
Ex6: "Ex6"
__proto__: Object
length: 2
__proto__: Array(0)
Я бы предположил, что использование JSON.stringify сейчас сделает его действительным JSON, но когда я сохраню его вJSON дает мне следующее:
[{
"chosenDate": "May_2019_1",
"shiftName": "Test 1",
"startTime": "00:00",
"endTime": "01:00",
"payPerHour": "1.00"
}]
[{
"chosenDate": "May_2019_16",
"shiftName": "Test 2",
"startTime": "01:00",
"endTime": "02:00",
"payPerHour": "2.00"
}]
Первый JSON был точно таким же вплоть до первого "]", так что concat ничего не сделал в конце?Как я могу решить эту проблему, чтобы он стал действительным JSON?
Я не знаю, если это что-то меняет, но я пытаюсь создать приложение ionicv1, используя плагин cordova-file-plugin для сохранения JSON.
РЕДАКТИРОВАТЬ: Поэтому я не уверен, почему, но при попытке использовать мой пример в Chrome он работает, но при запуске его через мое приложение, фактически помещая его в файл и читая его из файла, он возвращает сломанный JSON.Процесс:
- создайте первый массив.
- приведите его в строку и запишите в файл json.
- прочитайте файл и выполните синтаксический анализ json.
- createвторой массив.
- объединяет массивы.
- stringify и записывает в json.
и файл имеет поврежденный JSON.Я предполагаю, что где-то писать или читать что-то не так, как надо, а также отличать его от возможного дублирующего сообщения.