browserify-adventure-jp
Version:
learn browserify with this educational adventure
30 lines (20 loc) • 2.01 kB
Plain Text
前回の "single export" では `module.exports` を使って一つの関数をエクスポート
しました。もうひとつエクスポートの方法があって、それは `exports` オブジェクトを
使うことです。このオブジェクトにプロパティを設定することでエクスポートが可能になります。
こちらはどちらかというと機能のエクスポート方法としては一般的ではありませんが、それでも
いくつかの状況では有用です。たとえば `.parse()` と `stringify()` のように、性質の
全く異なったものをエクスポートするような場合です。
この段階では `prompt()` をエントリーファイルから二度呼び出して二つの値を読み取ります。
最初の値はオブジェクトの配列にパースするための文字列。二つ目の値はその逆にオブジェクトに
パースするための配列です。 `console.log()` を利用してそれぞれ出力してください。
`./ndjson.js` というファイルを作成し、 `parse()` と `stringify()` という関数を
`export` オブジェクトにプロパティを設定することにより、エクスポートしてください。
`.parse(str)` は `JSON.stringify()` された形式の改行によって区切られた文字列 `str`
を受け取り、 `JSON.parse()` を利用して各行をパースし、結果を配列に格納してください。
`.stringify(rows)` は `rows` に配列を受け取り、 `JSON.stringify()` で各配列を
文字列に変換し、改行区切りの文字列を返すようにしてください。
プログラムができたらエントリーファイルを `browserify` でコンパイルし、
`$ADVENTURE_COMMAND verify` にパイプで渡してください:
browserify main.js | $ADVENTURE_COMMAND verify
検証なしでプログラムを走らせたい場合には以下のようにします。
browserify main.js | $ADVENTURE_COMMAND run