情報アイランド

「情報を制する者は世界を制す」をモットーに様々な情報を提供することを目指すブログです。現在はプログラミング関連情報が多めですが、投資関連情報も取り扱っていきたいです。

標準出力やその他の書き込みストリームに値を出力する

標準出力やその他のストリームに値を出力するにはeyes.inspector関数の返り値の関数を使用します。

まずeyes.inspector関数を呼び出します。

var eyes = require('eyes');

var inspect = eyes.inspector({
    pretty: true, 
    hideFunctions: false, 
    stream: process.stdout, 
    maxLength: 2048, 
    styles: {
        all: 'cyan', 
        label: 'underline', 
        other: 'inverted', 
        key: 'bold', 
        special: 'grey', 
        string: 'green', 
        number: 'magenta', 
        bool: 'blue', 
        regexp: 'green'
    }
});

第1引数にオプションをオブジェクトとして指定します。この引数は指定しなくても構いません。

主なオプションには下のようなものがあります。

  • pretty・・・値の出力においてインデントを行うかを真偽値として指定します。デフォルトはtrueです。
  • hideFunctions・・・関数を出力しないかを真偽値として指定します。デフォルトはfalseです。
  • stream・・・値を出力する書き込みストリームを指定します。デフォルトはprocess.stdoutです。
  • maxLength・・・値の出力の最大文字数を指定します。デフォルトは2048です。
  • styles.all・・・値の出力全体の色を指定します。デフォルトはcyanです。
  • styles.label・・・ラベルの色を指定します。デフォルトはunderlineです。
  • styles.other・・・リテラル表現を有しないオブジェクトの色を指定します。デフォルトはinvertedです。
  • styles.key・・・オブジェクトのプロパティ名の色を指定します。デフォルトはboldです。
  • styles.special・・・nullundefinedの色を指定します。デフォルトはgreyです。
  • styles.string・・・文字列の色を指定します。デフォルトはgreenです。
  • styles.number・・・数値の色を指定します。デフォルトはmagentaです。
  • styles.bool・・・truefalseの色を指定します。デフォルトはblueです。
  • styles.regexp・・・正規表現の色を指定します。デフォルトはgreenです。

なお、色はcolorsモジュールにおける色を指定します。

返り値として標準出力やその他のストリームに値を出力するための関数が得られます。

次にeyes.inspector関数の返り値の関数を呼び出します。

inspect(xxx);

第1引数に値を指定します。

第2引数にラベルを指定します。この引数は指定しなくても構いません。

この関数はeyes.inspector関数の第1引数のstreamオプションの書き込みストリームに値を出力します。ただし、streamオプションがnullである場合には返り値として文字列化された値が得られます。

サンプルコード1

eyes-inspector.js

var eyes = require('eyes');

var inspect = eyes.inspector();
inspect({
    foo: 123, 
    bar: 'xxx', 
    baz: true, 
    qux: false, 
    quux: null, 
    corge: undefined, 
    grault: /yyy/
});

使用パッケージ

  • eyes
    npm install eyesでインストールします。

実行結果

C:\work\node>node eyes-inspector.js
{
    foo: 123,
    bar: 'xxx',
    baz: true,
    qux: false,
    quux: null,
    corge: undefined,
    grault: /yyy/
}

関連

pizyumi
プログラミング歴19年のベテランプログラマー。業務システム全般何でも作れます。現在はWeb系の技術を勉強中。
スポンサーリンク

-Node.js