जब मैं अपने कंसोल में नोड चलाता हूं और var _ = require('underscore');
टाइप करता हूं, _
अपरिभाषित समाप्त होता है। अगर मैं एक ही कोड को एक फ़ाइल में डालता हूं और इसे निष्पादित करता हूं, तो अंडरस्कोर लाइब्रेरी अपेक्षित के रूप में शामिल हो जाती है।node.js REPL पर निष्पादित होने पर आवश्यकता क्यों होती है ('अंडरस्कोर') अपरिभाषित होती है?
$ node
> var _ = require('underscore');
> console.log(_)
undefined // underscore library does not load
> var async = require('async');
undefined
> console.log(async) // async library does
{ noConflict: [Function],
nextTick: [Function],
forEach: [Function],
...
>
लेकिन एक .js node test.js
के रूप में निष्पादित फ़ाइल में एक ही कोड दोनों पुस्तकालयों की उम्मीद के रूप में लोड हो रहा है पता चलता है। क्या चल रहा है?
इस मुझे पागल गाड़ी चला रहा था! –
यह मुझे पागल भी चला रहा था। मैं यह उल्लेख करना चाहता हूं कि यह उत्तर लॉनाश के साथ-साथ अंडरस्कोर पर भी लागू होता है। –