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

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

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

---receipt:     Oz-Ware Purchase Invoice
date:        2012-08-06
customer:  #对象given:   Dorothyfamily:  Galeitems:  # 对象数组- part_no:   A4786descrip:   Water Bucket (Filled)price:     1.47quantity:  4- part_no:   E1628descrip:   High Heeled "Ruby" Slipperssize:      8price:     133.7quantity:  1bill-to:  &id001 # 锚点标记 id001street: |  # 多行字符串123 Tornado AlleySuite 16city:   East Centervillestate:  KSship-to:  *id001 # 引用锚点标记id001的数据specialDelivery:  > # 多行字符串Follow the Yellow BrickRoad to the Emerald City.Pay no attention to theman 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-...

NPM酷库045:js-yaml,读写YAML相关推荐

  1. NPM酷库:jsdom,纯JS实现的DOM

    NPM酷库,每天两分钟,了解一个流行NPM库. 昨天认识了一个在Node.js环境下操作HTML的库 cheerio,cheerio实现了jQuery接口,用起来十分方便.为什么不直接用jQuery呢 ...

  2. NPM酷库:ip,IP地址处理

    NPM酷库,每天两分钟,了解一个流行NPM库.· 今天我们来了解一个专门用来处理IP地址的库:ip,ip库能够获取本机IP地址.比较.转换.掩码/子网计算等各种和网络IP相关的操作: const ip ...

  3. NPM酷库046:cson-parser,解析CSON数据

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

  4. NPM酷库:dotenv,从文件加载环境变量

    NPM酷库,每天两分钟,了解一个流行NPM库.· 我们经常需要Node.js程序运行时加载不同的配置,比如开发环境和生产环境的数据数据库配置就可能不一样,使用 process.env.DB_HOST ...

  5. NPM酷库:dateformat 时间字符串格式化

    NPM酷库,每天两分钟,了解一个流行NPM库. JavaScript中Date内置对象的toString() 方法可以将时间对象转换为字符串,但是转换后的格式是这个样子的: Thu Feb 01 20 ...

  6. NPM酷库:uuid,生成随机ID

    NPM酷库,每天两分钟,了解一个流行NPM库. 在中心化应用中,数据记录的ID往往是数据库生成的自增ID,但是在分布式应用中,就会存在一些问题: 保存数据之前就需要给数据标识ID 数据规模超级大,中央 ...

  7. NPM酷库:cheerio,服务端jQuery接口实现

    NPM酷库,每天两分钟,了解一个流行NPM库. jQuery 是前端DOM操作的利器,我们通过jQuery的接口可以方便地访问.修改DOM树中的节点和内容. 有时,在Node.js服务端,我们也需要类 ...

  8. NPM酷库:globby,增强版的glob

    NPM酷库,每天两分钟,了解一个流行NPM库. 昨天,我们学习了一个新库 glob,用于模式匹配目录文件.今天,我们要了解的globby,是基于 glob,并进一步得到了增强了功能. globby 特 ...

  9. NPM酷库:chokidar监视文件变化

    NPM酷库,每天两分钟,了解一个流行NPM库. 像 webpack / grunt /gulp 等工具都提供watch模式,当磁盘文件变化后自动重新运行打包.今天我们要学习的chokidar就是一款专 ...

最新文章

  1. NHibernate和Cuyahoga(二)(翻译):
  2. 论文发得好,在这所985高校超市买东西能打折…
  3. 64位ubuntu安装32位编译器
  4. HDU - 5978 To begin or not to begin(简单博弈)
  5. 在.net3.5中使用ListView控件和DataPager控件笔记
  6. c语言函数编正切余切运算,浅谈正切函数与余切函数的应用
  7. HAProxy负载均衡原理及企业级实例部署haproxy集群
  8. SQL 死锁分析(转贴)
  9. Java访问修饰符——用于控制可见性
  10. MAC查看CPU信息
  11. Real格式的影片如何分离、合并音频视频?
  12. Auto.js学习笔记13:images.findImag()报错找不到方法,返回的坐标无法点击等问题利用图片的相似度执行精准目标点击(实战篇)
  13. 棋牌---这些年使用过的技术
  14. python网上下载视频,音乐
  15. java---interrupt、interrupted和isInterrupted的区别
  16. jacob操作word教程
  17. MUI框架-03-自定义MUI控件样式
  18. dd linux u盘不识别,【已解决】U盘在dd后无法识别
  19. idea必备配置和插件
  20. 西门子200smart与3台欧姆龙e5cc温控器和3台台达MS300变频器通讯程序

热门文章

  1. 使用python 批量将 HEIC格式图片转换成JPG或者PNG格式的图片
  2. java下载URl的网络资源
  3. [绍棠] 正则表达式
  4. Fedora12 x86_64 安装ORACLE 11gR2
  5. 港科资讯 | 2021年度佛山香港科大专项校企合作研发项目开始申报啦
  6. 【软件测试】小本科+985硕渣投面字节跳动,共七面,已拿offer 面经分享
  7. 微信小程序picker组件 - 省市二级联动及其回显
  8. 文本纠错之量名搭配纠错
  9. 360随身wifi2.0小度wifi猎豹wifi校园网的表现
  10. 论文查重会泄露论文吗?