跳到主要内容

Yaml

YAML 是一种人类可读的(易于阅读和理解)数据序列化语言,通常用于编写配置文件。使用 YAML 的一个好处是,在 Github 中可以跟踪和审核更改。

语法规则

  1. YAML 文件使用 .yml 或 .yaml 扩展名,并遵循特定的语法规则。YAML 也是 JSON 的超集,因此 JSON 文件在 YAML 中有效。

  2. 没有常用的格式符号,例如大括号、方括号、结束标记或引号。因为它们使用 Python 风格的空格缩进来确定结构并指示嵌套。

  3. 注释可以用井号或井号 (#) 来标识。(不支持多行注释)

  4. 破折号:3 个破折号 (---) 用于表示文档的开始。

  5. 大小写敏感

  6. 换行转化空格

YAML 支持的数据结构有三种。

  • 对象:键值对的集合,又称为映射(mapping)/ 哈希(hashes) / 字典(dictionary)
  • 数组:一组按次序排列的值,又称为序列(sequence) / 列表(list)
  • 纯量(scalars):字符串、 布尔值、 整数、 浮点数、 Null、 时间、 日期

基本语法例子 🌰

---
# : 代表对象
languages:
# - 代表数组
- Ruby
Perl
- Python
websites:
date: 1976-07-31
str: 这是一行字符串
bool: true
# 注释:~ 代表null
parent: ~
# 注释:!! 代表强制转换数据类型
f: !!str true

# & 用来建立锚点(defaults)* 用来引用锚点 << 表示合并到当前
defaults: &defaults
adapter: postgres
host: localhost

development:
database: myapp_development
<<: *defaults

参考链接

官网:https://yaml.org/

什么是 YAML?

阮一峰的网络日志 » YAML 语言教程:https://www.ruanyifeng.com

在线体验:http://nodeca.github.io/js-yaml/