缘由
最近学习新知识需要使用YAML,那就来学习一下吧。
介绍
YAML这种语言常被使用以数据做为中心,标记语言并非重点 。
语法
数据类型
YAML 支持以下几种数据类型:
- 对象:键值对的集合,又称为映射(mapping)/ 哈希(hashes) / 字典(dictionary)
 - 数组:一组按次序排列的值,又称为序列(sequence) / 列表(list)
 - 纯量(scalars):单个的、不可再分的值
 
对象数组解析例子
YAML支持对象数组,接下来直接举个例子:
图书:# 注释IT技术:前端:JavaScript :- 红宝书- 犀牛书- 你不知道的JavaScriptHTML :- what wgCSS :- w3.org后端:? Java? Spring? MySql# 注释文学: { 西游记, 水浒传, 三国演义 }
转换为JSON为:
{"图书": {"IT技术": {"前端": {"JavaScript": ["红宝书","犀牛书","你不知道的JavaScript"],"HTML": ["what wg"],"CSS": ["w3.org"]},"后端": {"Java": null,"Spring": null,"MySql": null}}},"文学": {"西游记": null,"水浒传": null,"三国演义": null}}
其中有的情况不能用JSON表示,因为YAML的key可以是对象或者数组的复合结构
?- 朋友- 同事:- 小明- 小张- 小李
key是[“朋友”,”同事”] value是[“小明”,”小张”,”小李”]
?关系:- 朋友- 同事:- 小明- 小张- 小李
key是{“关系”: [“朋友”,”同事”]} value是[“小明”,”小张”,”小李”]
资料
解析地址:https://astexplorer.net/
参考地址:https://www.runoob.com/w3cnote/yaml-intro.html
注意
这里举的例子不能覆盖所有,遇到yml文件后最好去https://astexplorer.net/解析看一下AST就知道是什么意思了。
