2016-05-10 10 views
1

Ich hatte zwei Datei hier erste ist app.js Warum bin immer ich extra undefiniert auf Knoten JS

var msg = require('./msg.js'); 
 
console.log("Hello World From app.js") 
 
console.log(msg());

Ein weiterer Grund ist msg.js

var msg = function() { 
 
    console.log("Hello World From msg.js"); 
 
} 
 
module.exports = msg;

Beim Ausführen dieser auf Konsole über Befehl

node app.js

Erste Ausgabe wie
Hallo Welt von app.js
Hallo Welt Von msg.js
undefined

So ist meine Frage, warum undefined gibt es mehr sein? Ist etwas falsch in der Art, wie ich das Modul erstellt habe? Gibt es dafür einen besseren Weg?

var msg = require('./msg.js'); 
console.log("Hello World From app.js") 
msg(); 

eine Funktion, die Sie aufrufen in einem anderen Modul deklariert trösten sollte man nicht seinen Ausgang log:

Antwort

1

Weil console.log(msg()) versucht, die Rückgabe der Werte von msg() und msg() zu drucken, gibt nichts zurück.

Versuchen Sie also, msg() anstatt console.log(msg()) aufzurufen.

var msg = require('./msg.js'); 
console.log("Hello World From app.js") 
msg(); 

Edit: Nach Kommentar,

msg.js

var msg = function() { 
    return "Hello World From msg.js"; 
} 
module.exports = msg; 

app.js

var msg = require('./msg.js'); 
console.log("Hello World From app.js") 
console.log(msg()); 
+0

bekommen Sie oder ich kann nur zurück ("Hallo Welt Von msg.js"); in msg.js – user5323957

+0

Es gibt nicht 'null' zurück, es gibt 'undefined' zurück. – jfriend00

+0

'null' wird als' undefined' in Javascript 'console.log' gedruckt. Versuchen Sie, den Code ** Edit ** auszuführen, er sollte nicht undefined drucken. –

0

Der Code in app.js sollte festgelegt werden.

+0

du hast oder ich kann nur zurückkehren ("Hallo Welt von msg .js "); in msg.js – user5323957

+0

Sie können auch "Hello World From msg.js" –

Verwandte Themen