NPM酷库045:js-yaml,读写YAML
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相关推荐
- NPM酷库:jsdom,纯JS实现的DOM
NPM酷库,每天两分钟,了解一个流行NPM库. 昨天认识了一个在Node.js环境下操作HTML的库 cheerio,cheerio实现了jQuery接口,用起来十分方便.为什么不直接用jQuery呢 ...
- NPM酷库:ip,IP地址处理
NPM酷库,每天两分钟,了解一个流行NPM库.· 今天我们来了解一个专门用来处理IP地址的库:ip,ip库能够获取本机IP地址.比较.转换.掩码/子网计算等各种和网络IP相关的操作: const ip ...
- NPM酷库046:cson-parser,解析CSON数据
NPM酷库,每天两分钟,了解一个流行NPM库.· 前两期我们分别介绍了JSON5和YAML,这两种数据格式相对于JSON,更加易于人类编写和理解,今天我们继续介绍另外一个容易编写的格式 CSON. C ...
- NPM酷库:dotenv,从文件加载环境变量
NPM酷库,每天两分钟,了解一个流行NPM库.· 我们经常需要Node.js程序运行时加载不同的配置,比如开发环境和生产环境的数据数据库配置就可能不一样,使用 process.env.DB_HOST ...
- NPM酷库:dateformat 时间字符串格式化
NPM酷库,每天两分钟,了解一个流行NPM库. JavaScript中Date内置对象的toString() 方法可以将时间对象转换为字符串,但是转换后的格式是这个样子的: Thu Feb 01 20 ...
- NPM酷库:uuid,生成随机ID
NPM酷库,每天两分钟,了解一个流行NPM库. 在中心化应用中,数据记录的ID往往是数据库生成的自增ID,但是在分布式应用中,就会存在一些问题: 保存数据之前就需要给数据标识ID 数据规模超级大,中央 ...
- NPM酷库:cheerio,服务端jQuery接口实现
NPM酷库,每天两分钟,了解一个流行NPM库. jQuery 是前端DOM操作的利器,我们通过jQuery的接口可以方便地访问.修改DOM树中的节点和内容. 有时,在Node.js服务端,我们也需要类 ...
- NPM酷库:globby,增强版的glob
NPM酷库,每天两分钟,了解一个流行NPM库. 昨天,我们学习了一个新库 glob,用于模式匹配目录文件.今天,我们要了解的globby,是基于 glob,并进一步得到了增强了功能. globby 特 ...
- NPM酷库:chokidar监视文件变化
NPM酷库,每天两分钟,了解一个流行NPM库. 像 webpack / grunt /gulp 等工具都提供watch模式,当磁盘文件变化后自动重新运行打包.今天我们要学习的chokidar就是一款专 ...
最新文章
- NHibernate和Cuyahoga(二)(翻译):
- 论文发得好,在这所985高校超市买东西能打折…
- 64位ubuntu安装32位编译器
- HDU - 5978 To begin or not to begin(简单博弈)
- 在.net3.5中使用ListView控件和DataPager控件笔记
- c语言函数编正切余切运算,浅谈正切函数与余切函数的应用
- HAProxy负载均衡原理及企业级实例部署haproxy集群
- SQL 死锁分析(转贴)
- Java访问修饰符——用于控制可见性
- MAC查看CPU信息
- Real格式的影片如何分离、合并音频视频?
- Auto.js学习笔记13:images.findImag()报错找不到方法,返回的坐标无法点击等问题利用图片的相似度执行精准目标点击(实战篇)
- 棋牌---这些年使用过的技术
- python网上下载视频,音乐
- java---interrupt、interrupted和isInterrupted的区别
- jacob操作word教程
- MUI框架-03-自定义MUI控件样式
- dd linux u盘不识别,【已解决】U盘在dd后无法识别
- idea必备配置和插件
- 西门子200smart与3台欧姆龙e5cc温控器和3台台达MS300变频器通讯程序