Yet Another Markuo Language仍是一种标记语言
它实质上是一种通用的数据串行话格式
对象的一组键值对,使用冒号结构表示
animal: pets
转到JavaScript如下:
{animal: ‘pets’}
也可以使用另一种写法
key:{key1:value1,key2:value2,key3:value3}
转为JavaScript如下:
{key: {key1: ‘value1’,key2: ‘value2’}}
以 - (连线词)开头的行,构成一个数组:
-A
-B
-C
转为JavaScript如下
[‘A’,‘B’,‘C’]
数据结构的子成员是一个数组,则可以在该项下面缩进一个空格
–
-A
-B
-C
转为JavaScript如下:
[[‘A’,‘B’,‘C’]]
一个相对复杂的例子:
companies: - id: 1 name: company1 price: 200W - id: 2 name: company2 price: 500W意思是companies是一个数组,每一个数组元素 又是由id,name,price三个属性构成\
companies: [{id: 1,name: company1,price: 200w},{id: 2,name: company2,price: 500w}]
对象和数组可以组合使用,形成复合结构:
letter: -A -B -c website: YAML: yaml.org Ruby: ruby-lang.org Python: python.org Prrl: use.perl.org
转换为json格式为:
{ letter: [‘A’,‘B’,‘C’],
websites{
YAML: yaml.org Ruby: ruby-lang.org Python: python.org Prrl: use.perl.org}
}
纯量是最基本的,不可再分的值,包括:
字符串布尔值整数浮点数Null时间日期数值直接以字面量的形式表示
number: 12.30
布尔值用true和false表示 isSet: truenull用~表示 parent:~日期必须使用ISO 8601格式:即yyyy-MM-dd 时间必须使用 ISO8601格式:时间和日期直接用T/t连接,最后使用+代表时区 date: 2020-10-22 datetime: 2020-10-22T14:24:35 + 08:00