资讯专栏INFORMATION COLUMN

NPM酷库045:js-yaml,读写YAML

jsummer / 1030人阅读

摘要:酷库,每天两分钟,了解一个流行库。在酷库中,我们了解到了相对于格式更加易于编写和维护的,今天我们继续学习另外一个更加简单易读的数据格式。是一个专门用来读写格式数据的库,他可以将对象转换成字符串,也可以将字符串转换为对象。

NPM酷库,每天两分钟,了解一个流行NPM库。·

在NPM酷库044中,我们了解到了相对于JSON格式更加易于编写和维护的JSON5,今天我们继续学习另外一个更加简单易读的数据格式YAML。

下方就是一个YAML数据示例:

---

receipt:     Oz-Ware Purchase Invoice
date:        2012-08-06
customer:  #对象
    given:   Dorothy
    family:  Gale

items:  # 对象数组
    - part_no:   A4786
      descrip:   Water Bucket (Filled)
      price:     1.47
      quantity:  4

    - part_no:   E1628
      descrip:   High Heeled "Ruby" Slippers
      size:      8
      price:     133.7
      quantity:  1

bill-to:  &id001 # 锚点标记 id001
    street: |  # 多行字符串
            123 Tornado Alley
            Suite 16
    city:   East Centerville
    state:  KS

ship-to:  *id001 # 引用锚点标记id001的数据

specialDelivery:  > # 多行字符串
    Follow the Yellow Brick
    Road to the Emerald City.
    Pay no attention to the
    man behind the curtain.
    
...

YAML格式能够和JSON格式互相转换,YAML格式相对于JSON更加易于人类编写和理解,所以更适合替代JSON用来编写配置文件。

js-yaml

js-yaml 是一个专门用来读写YAML格式数据的库,他可以将JS对象转换成YAML字符串,也可以将YAML字符串转换为JS对象。

const yaml = require("js-yaml");
const fs = require("fs");

let obj = yaml.safeLoad(fs.readFileSync("example.yml", "utf8"));

let str = yaml.safeDump(obj);
参考资料

http://yaml.org

https://zh.wikipedia.org/wiki...

https://github.com/nodeca/js-...

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/107538.html

相关文章

  • NPM酷库050:xmlbuilder,创建XML文件

    摘要:酷库,每天两分钟,了解一个流行库。在前几期酷库中,我们介绍了操作等数据格式文件,在外部系统接口中,我们还会经常遇到格式的接口协议。本期,我们先来了解,用来创建格式文档。 NPM酷库,每天两分钟,了解一个流行NPM库。· 在前几期NPM酷库中,我们介绍了Node.js操作JSON5、YAML、CSON、CSV等数据格式文件,在外部系统接口中,我们还会经常遇到XML格式的接口协议。从本期开...

    baukh789 评论0 收藏0
  • NPM酷库050:xmlbuilder,创建XML文件

    摘要:酷库,每天两分钟,了解一个流行库。在前几期酷库中,我们介绍了操作等数据格式文件,在外部系统接口中,我们还会经常遇到格式的接口协议。本期,我们先来了解,用来创建格式文档。 NPM酷库,每天两分钟,了解一个流行NPM库。· 在前几期NPM酷库中,我们介绍了Node.js操作JSON5、YAML、CSON、CSV等数据格式文件,在外部系统接口中,我们还会经常遇到XML格式的接口协议。从本期开...

    taoszu 评论0 收藏0
  • NPM酷库046:cson-parser,解析CSON数据

    摘要:酷库,每天两分钟,了解一个流行库。前两期我们分别介绍了和,这两种数据格式相对于,更加易于人类编写和理解,今天我们继续介绍另外一个容易编写的格式。 NPM酷库,每天两分钟,了解一个流行NPM库。· 前两期我们分别介绍了JSON5和YAML,这两种数据格式相对于JSON,更加易于人类编写和理解,今天我们继续介绍另外一个容易编写的格式 CSON。 CSON格式全称是 CoffeeScript...

    BigNerdCoding 评论0 收藏0
  • NPM酷库047:ini,解析INI配置文件

    摘要:酷库,每天两分钟,了解一个流行库。下方就是一个类型的配置文件库在中,我们使用库来解析文件参考资料 NPM酷库,每天两分钟,了解一个流行NPM库。· 最近几期我们都在研究各种数据文件类型,包括JSON5、YAML、CSON等,相对于JSON,这些格式能够更加易于人类编写和理解,所以更适合做配置文件,今天我们继续学习如何解析Windows系统上常用的*.ini配置文件。 下方就是一个INI...

    flyer_dev 评论0 收藏0
  • NPM酷库044:json5,更可读的JSON

    摘要:酷库,每天两分钟,了解一个流行库。是一个格式的扩展,目的是能够让人类更容易读写数据文件。只是一个第三方的库,并非格式的继任者。相对于,有如下各个方面优势。 NPM酷库,每天两分钟,了解一个流行NPM库。· JSON是JS中数据交换时最常用的数据格式,其序列话和反序列化性能非常好,但是其语法却比较严格,比如以下是一个合法的JS声明,却不是一个合法的JSON: { foo: bar } J...

    Flink_China 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<