Corredor

ウェブ、プログラミングの勉強メモ。

JavaScript で YAML を扱うなら「js-yaml」が楽チン

Node.js で YAML ファイルを読み込んで扱いたくなったので、ググって1件目に出てきた js-yaml を使ってみた。

$ mkdir practice-yaml-in-js && cd $_
$ npm init -y
$ npm install -S js-yaml
$ touch index.js
  • index.js
const fs = require('fs');
const jsYaml = require('js-yaml');

// YAML ファイルを読み込む (最終的に string 型の変数に収められていれば YAML ベタ書きでも良い
const yamlData = fs.readFileSync('./my-settings.yaml', 'utf-8');
// 引数の string から連想配列を作る
const data = jsYaml.safeLoad(yamlData);

// 読み込んだファイル (ココでは my-settings.yaml) の内容によるが、以下のようにアクセスできたりする
console.log( data.info.name );  // 連想配列として
console.log( data.fileNames[5] );  // 配列へのアクセス

ファイルからの読み込み部分は素直に fs を使い、js-yaml にはとにかく string で渡せば良い。

なお、うまく YAML がパースできなかった場合は、YAMLException がスローされるので、必要に応じて trycatch で囲んだりしておこう。

Ansible徹底活用ガイド ThinkIT Books

Ansible徹底活用ガイド ThinkIT Books

  • 作者: 平初,平原一帆,小野寺大地,安久隼人,坂本諒太,冨永善視
  • 出版社/メーカー: インプレス
  • 発売日: 2016/10/04
  • メディア: Kindle版
  • この商品を含むブログを見る

現場で使える Ruby on Rails 5速習実践ガイド

現場で使える Ruby on Rails 5速習実践ガイド

  • 作者: 大場寧子,松本拓也,櫻井達生,小田井優,大塚隆弘,依光奏江,銭神裕宜,小芝美由紀
  • 出版社/メーカー: マイナビ出版
  • 発売日: 2018/10/19
  • メディア: Kindle版
  • この商品を含むブログを見る