情報アイランド

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

Node.jsで関数を非推奨(deprecated)にする

関数を非推奨にするにはutil.deprecate関数を使用します。

var util = require('util');

var f = util.deprecate(function (arg1, arg2) {
}, 'xxx');

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

第2引数にメッセージを指定します。

返り値として非推奨化された関数が得られます。

この関数を初めて呼び出した際には標準エラー出力に警告メッセージが出力されます。

ただし、--no-deprecationコマンドラインオプションや--no-warningsコマンドラインオプションを付加してNode.jsを起動した場合やprocess.noDeprecationtrueである場合にはメッセージは出力されません。

--trace-deprecationコマンドラインオプションや--trace-warningsコマンドラインオプションを付加してNode.jsを起動した場合やprocess.traceDeprecationtrueである場合にはメッセージに加えてスタックトレースも出力されます。

--throw-deprecationコマンドラインオプションを付加してNode.jsを起動した場合やprocess.throwDeprecationtrueである場合には例外が発生します。

サンプルコード1

util-deprecate.js

var util = require('util');

var f = function () {
    console.log('this is a function.');
};
var df = util.deprecate(function () {
    console.log('this is a deprecated function.');
}, 'deprecated function');

f();
f();
f();
df();
df();
df();

実行結果

C:\work\node>node util-deprecate.js
this is a function.
this is a function.
this is a function.
this is a deprecated function.
this is a deprecated function.
this is a deprecated function.
(node:4544) DeprecationWarning: deprecated function

関連

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

-Node.js