簡介:YAML是專門用來寫配置文件的語言,非常簡潔和強大,特別適合用來表達或編輯數(shù)據(jù)結(jié)構(gòu)、配置文件。后綴.yml
基本語法
大小寫敏感
使用縮進表示層級關(guān)系
所及時不允許使用Tab鍵,只允許使用空格
縮進的空格數(shù)目不重要,只要相同層級的元素左側(cè)對齊即可。
·# 表示注釋
YAML支持的數(shù)據(jù)結(jié)構(gòu)有三種
對象:鍵值對的集合,又稱為映射/哈希/字典
數(shù)組:一組按次序排列的值
純量(scalars):單個的、不可再分的值
對象
對象的一組鍵值對,使用冒號結(jié)構(gòu)表示。
animal: pets
轉(zhuǎn)為 JavaScript 如下。
{ animal: 'pets' }
數(shù)組
一組連詞線開頭的行,構(gòu)成一個數(shù)組。
- Cat
- Dog
- Goldfish
轉(zhuǎn)為 JavaScript 如下:
[ 'Cat', 'Dog', 'Goldfish' ]
數(shù)據(jù)結(jié)構(gòu)的子成員是一個數(shù)組,則可以在該項下面縮進一個空格。
-
- Cat
- Dog
- Goldfish
轉(zhuǎn)為 JavaScript 如下:
[ [ 'Cat', 'Dog', 'Goldfish' ] ]
純量
純量是最基本的、不可再分的值。以下數(shù)據(jù)類型都屬于 JavaScript 的純量。
字符串
布爾值
整數(shù)
浮點數(shù)
Null
時間
日期
案例:
boolean:
- TRUE #true,True都可以
- FALSE #false,F(xiàn)alse都可以
float:
- 3.14
- 6.8523015e+5 #可以使用科學(xué)計數(shù)法
int:
- 123
- 0b1010_0111_0100_1010_1110 #二進制表示
null:
nodeName: 'node'
parent: ~ #使用~表示null
string:
- 哈哈
- 'Hello world' #可以使用雙引號或者單引號包裹特殊字符
- newline
newline2 #字符串可以拆成多行,每一行會被轉(zhuǎn)化成一個空格
date:
- 2018-02-17 #日期必須使用ISO 8601格式,即yyyy-MM-dd
datetime:
- 2018-02-17T15:02:31+08:00 #時間使用ISO 8601格式,時間和日期之間使用T連接,最后使用+代表時區(qū)
Note: JS-YAML可以解析 yaml,具體詳解點擊超鏈接!