YAML

简介:YAML是专门用来写配置文件的语言,非常简洁和强大,特别适合用来表达或编辑数据结构、配置文件。后缀.yml

基本语法

  • 大小写敏感

  • 使用缩进表示层级关系

  • 所及时不允许使用Tab键,只允许使用空格

  • 缩进的空格数目不重要,只要相同层级的元素左侧对齐即可。

  • ·# 表示注释

YAML支持的数据结构有三种

  • 对象:键值对的集合,又称为映射/哈希/字典

  • 数组:一组按次序排列的值

  • 纯量(scalars):单个的、不可再分的值

对象

对象的一组键值对,使用冒号结构表示。

animal: pets    

转为 JavaScript 如下。

{ animal: 'pets' }

数组

一组连词线开头的行,构成一个数组。

- Cat
- Dog
- Goldfish

转为 JavaScript 如下:

[ 'Cat', 'Dog', 'Goldfish' ]

数据结构的子成员是一个数组,则可以在该项下面缩进一个空格。

-
 - Cat
 - Dog
 - Goldfish

转为 JavaScript 如下:

[ [ 'Cat', 'Dog', 'Goldfish' ] ]

纯量

纯量是最基本的、不可再分的值。以下数据类型都属于 JavaScript 的纯量。

  • 字符串

  • 布尔值

  • 整数

  • 浮点数

  • Null

  • 时间

  • 日期

案例:

boolean: 
    - TRUE  #true,True都可以
    - FALSE  #false,False都可以
float:
    - 3.14
    - 6.8523015e+5  #可以使用科学计数法
int:
    - 123
    - 0b1010_0111_0100_1010_1110    #二进制表示
null:
    nodeName: 'node'
    parent: ~  #使用~表示null
string:
    - 哈哈
    - 'Hello world'  #可以使用双引号或者单引号包裹特殊字符
    - newline
      newline2    #字符串可以拆成多行,每一行会被转化成一个空格
date:
    - 2018-02-17    #日期必须使用ISO 8601格式,即yyyy-MM-dd
datetime: 
    -  2018-02-17T15:02:31+08:00    #时间使用ISO 8601格式,时间和日期之间使用T连接,最后使用+代表时区

Note: JS-YAML可以解析 yaml,具体详解点击超链接!

你可能感兴趣的:(YAML)