utilモジュールとは
公式の説明では、このnode:utilモジュールは、Node.js内部APIのニーズをサポートします。
と書かれているが、私にはよく意味がわからなかった。
→ 要は、ユーティリティ関数 (よく使う処理を簡単に呼び出せるように作成される小さな関数) を提供しているモジュールですということで良さそう。
できること
主な関数。シンプルな機能が提供されている。
Method | Description |
---|---|
debuglog() | デバッグメッセージを出力する |
deprecate() | 指定した関数が呼び出されたとき、非推奨としてwarningを出す |
format() | 指定した引数に応じて文字列をフォーマットする |
inherits() | 継承をutil.inherits(Child, Parent);の形で手軽に行える |
inspect() | オブジェクトを文字列化する |
その他の使えそうな機能
util.types
様々な種類の組み込みオブジェクトの型チェックを提供する
(例)
util.types.isArgumentsObject(value): 引数がオブジェクトであればtrueを返却
util.types.isAsyncFunction(value): 引数が非同期関数であればtrueを返却
他にも様々な型チェックが可能。
できることの補足
- inherits()では下記のようなことが行われて継承される。
Child.prototype = {constructor: Child, __proto__: Parent.prototype}
- util.inspectは%oフォーマッターを使った時に内部で呼ばれている関数、らしい。
この内容はこちらの記事が大変分かりやすい。