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

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://segmentfault.com/a/1190000013315767
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞