#javascript
Вопрос:
Мне нужно преобразовать следующее в ТОЧНОМ формате, показанном ниже, с помощью javascript, не могли бы вы подсказать, как этого добиться
От: {"healthy":true,"unhealthy_reasons":[]}
Для: [{"healthy":true,"unhealthy_reasons":[]}]
Комментарии:
1. Я нигде не вижу в ваших образцах данных, где строка преобразуется в массив. Единственное различие между «от» и «до» заключается в том, что объект «от» был помещен в массив, что тривиально
[from]
2. извините за опечатку… да, действительно, объект нужно поместить внутри массива
3. Если ваш исходный объект находится в переменной с именем
from
, тоlet to = [from];
это все, что вам нужно.4. Здесь нет JSON.
Ответ №1:
Если это все, что вам нужно сделать, вы можете просто заключить переменную, содержащую объект, в квадратные скобки массива:
let initialObject = {"healthy":true,"unhealthy_reasons":[]};
let arrayedObject = [initialObject];
Но мне интересно, есть ли в этом что-то еще. Если это на самом деле часть более сложной задачи, просто добавьте это к своему вопросу, и вы получите более полный ответ.
Ответ №2:
Воспользуйся JSON.разбор() и JSON.stringify()
let data = '{"healthy":true,"unhealthy_reasons":[]}';
let parsed = JSON.parse(data);
//TO get an array
console.log([parsed])
//TO get a string
console.log(JSON.stringify([parsed]))
Комментарии:
1. Это не приводит к
[{"healthy":true,"unhealthy_reasons":[]}]
2. OP теперь уточнил, что этот вопрос не имеет никакого отношения к JSON.
3. Кроме того, это все равно приводит к неправильному результату…
4. действительно, он не выдает вывод в виде [{«здоровый»:true,»нездоровый»:[]}]