module.exports
宣言内の別の関数内から関数をどのように呼び出しますか?
var bla = require('./bla.js');
console.log(bla.bar());
bla.js
module.exports = {
foo: function (req, res, next) {
return ('foo');
},
bar: function(req, res, next) {
this.foo();
}
}
私は関数foo
内から関数にアクセスしようとしていますbar
、そして私は得ています:
TypeError:オブジェクト#にはメソッド 'foo'がありません
私が得るthis.foo()
だけに変更した場合foo()
:
ReferenceError:fooが定義されていません
4
コードをテストしましたが、エラーはありませんでした。return関数がないため、bar関数はundefinedを返します。正しくテストしていますか?
—
Ferchi、2014年
ノードバージョンでテストされ
—
VladNeacsu
v8.12.0
、エラーをスローしなくなりました。bar
にはreturnステートメントがないため、実行するconsole.log(bla.bar())
と単に返されますundefined