TL; DR
Ти хочеш це:
AAPL:
- shares: -75.088
date: 11/27/2015
- shares: 75.088
date: 11/26/2015
Відображення
Еквівалент YAML об'єкта JSON - це відображення, яке виглядає приблизно так:
# flow style
{ foo: 1, bar: 2 }
# block style
foo: 1
bar: 2
Зауважте, що перші символи клавіш у блоковому відображенні повинні бути в одному стовпці. Демонструвати:
# OK
foo: 1
bar: 2
# Parse error
foo: 1
bar: 2
Послідовності
Еквівалент масиву JSON в YAML - це послідовність, яка виглядає як будь-яка з цих (які є еквівалентними):
# flow style
[ foo bar, baz ]
# block style
- foo bar
- baz
У послідовності блоків -
s має бути в одному стовпці.
JSON YAML
Давайте перетворимо ваш JSON в YAML. Ось ваш JSON:
{"AAPL": [
{
"shares": -75.088,
"date": "11/27/2015"
},
{
"shares": 75.088,
"date": "11/26/2015"
},
]}
Як суть справи, YAML - це сукупність JSON, тому вищезазначене вже є дійсним YAML - але давайте насправді використовувати функції YAML, щоб зробити це красивішим.
Починаючи зсередини, у нас є об'єкти, які виглядають так:
{
"shares": -75.088,
"date": "11/27/2015"
}
Еквівалентне відображення YAML:
shares: -75.088
date: 11/27/2015
У нас у масиві (послідовності) є два:
- shares: -75.088
date: 11/27/2015
- shares: 75.088
date: 11/26/2015
Зверніть увагу, як -
вирівнюються s-лінія та перші символи клавіш відображення.
Нарешті, ця послідовність сама по собі є значенням у зіставленні з ключем AAPL
:
AAPL:
- shares: -75.088
date: 11/27/2015
- shares: 75.088
date: 11/26/2015
Розбір цього і перетворення його в JSON дає очікуваний результат:
{
"AAPL": [
{
"date": "11/27/2015",
"shares": -75.088
},
{
"date": "11/26/2015",
"shares": 75.088
}
]
}
Ви можете побачити його (і редагувати його інтерактивно) тут .