当前位置:   article > 正文

YAML语法记录

yaml语法

YAML语法记录

记录一下yaml的语法,方便以后查找,前端领域用yaml相对来说少一点,一旦用忘了语法很难受,特此记录。

一、YAML简介

YAML(Yet Another Markup Language)是一种直观的、可读性高并且容易被人类阅读和理解的数据序列化格式。它常用于配置文件,但也可以用于数据存储、传输等其他场景。YAML的设计目标包括易读性、与脚本语言的交互性好等。

二、YAML基本语法

1. 基本结构

YAML文件由键值对组成,键和值之间用冒号:分隔,冒号后面要加一个空格。

key: value
  • 1

2. 层级关系

YAML使用缩进来表示层级关系,通常使用两个空格进行缩进。注意,不能使用制表符(Tab)进行缩进,因为不同的系统对制表符的宽度解释可能不同。

parent:
  child1: value1
  child2: value2
  • 1
  • 2
  • 3

3. 多行字符串

使用|可以保留字符串中的换行符,>则会将换行符替换为一个空格。

key1: |
  line1
  line2
key2: >
  line1
  line2
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

4. 数组

使用-可以表示数组或列表。

fruits:
  - apple
  - banana
  - cherry
  • 1
  • 2
  • 3
  • 4

5. 特殊字符

如果值中包含特殊字符,可以使用引号(单引号或双引号)将其括起来。双引号内的特殊字符会被转义,单引号内的则不会。

key1: "value with \"special\" characters"
key2: 'value with ''special'' characters'
  • 1
  • 2

6. 锚点和别名

YAML支持使用锚点(&)和别名(*)来复用数据。

defaults: &defaults
  adapter: postgres
  host: localhost

development:
  database: dev
  <<: *defaults

test:
  database: test
  <<: *defaults
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

三、YAML进阶语法

1. 复合结构

YAML支持将数组和对象嵌套使用,构建更复杂的数据结构。

users:
  - id: 1
    name: Alice
    emails:
      - alice@example.com
      - alice.work@example.com
  - id: 2
    name: Bob
    emails:
      - bob@example.com
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

2. 标签

YAML支持使用标签来指定数据的类型。例如,使用!!str可以显式地将值指定为字符串类型,使用!!int可以将其指定为整数类型。

explicit_string: !!str 123
explicit_integer: !!int "123"
  • 1
  • 2

3. 流式集合

YAML支持使用流式集合语法来表示数组或列表,这在某些情况下可以使语法更简洁。

fruits: [apple, banana, cherry]
  • 1

4. 合并键

YAML的合并键(<<)允许你将一个映射的内容合并到另一个映射中。这在配置文件中特别有用,可以避免重复配置。

defaults: &defaults
  color: red
  size: large

item1:
  name: ball
  <<: *defaults

item2:
  name: shirt
  <<: *defaults
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

四、YAML使用注意事项

  1. 避免使用制表符

如前所述,YAML文件应使用空格进行缩进,避免使用制表符,以免因系统差异导致解析错误。

  1. 注意冒号后的空格

YAML语法中,冒号后面必须跟一个空格,否则会导致解析错误。

  1. 字符串引号的一致性

如果字符串值中包含引号,应确保使用的引号类型一致,或者使用转义字符。

  1. 锚点和别名的使用

锚点和别名是YAML中的高级特性,可以使数据复用更加简洁。但是,过度使用可能会使文件变得难以阅读和理解,因此应适度使用。

五、YAML工具

  1. YAML解析器

有许多语言和库提供了YAML解析器,可以将YAML文件解析为相应的数据结构。例如,Python中的PyYAML库和JavaScript中的js-yaml库。

  1. YAML格式化工具

YAML格式化工具可以帮助你格式化YAML文件,使其更加易读和美观。一些集成开发环境(IDE)和代码编辑器(如VS Code)提供了内置的YAML格式化支持。

  1. YAML验证工具

YAML验证工具可以帮助你检查YAML文件的语法是否正确。这对于排查因语法错误导致的问题非常有用。

六、YAML在前端开发中的应用

YAML在前端开发中的应用主要体现在配置文件和静态数据上。例如,一些前端项目使用YAML格式的配置文件来管理项目的配置信息,如环境变量、构建选项等。此外,YAML还可以用作静态数据源,通过解析YAML文件来生成页面内容。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/613971
推荐阅读
相关标签
  

闽ICP备14008679号