2016-05-16 6 views
0

Wahrscheinlich betitelt dieser eine schlecht, wird versuchen, ein bisschen besser zu erklären.Verwenden einer JS-Funktion, um die Syntax eines anderen zu verwenden? node.js

Im Grunde habe ich versucht, eine Funktion zu machen:

var readlineSync = require('readline-sync'); 
function i(context) { 
    readlineSync.question(context) 
} 

var Username = i("Testing the prompt: ") 
console.log(Username) 

Ich finde mit readlineSync.question immer und immer wieder ziemlich irritierend, zu schreiben, aber diese den Code zurückgibt ausgeführt wird:

Testing the prompt: Hello 
undefined 

Am Ich mache etwas falsch?

+0

Sie wissen write ist wright nicht geschrieben? – thatOneGuy

+0

Nein? es ist korrekt ... – Tom

+0

ja, ich habe einen Tippfehler gemacht. Mein Fehler. Vor der Bearbeitung. – Tom

Antwort

3

Sie geben nichts von der Funktion zurück.

es sein sollte:

function i(context) { 
    return readlineSync.question(context) 
} 
+0

Ahh, das würde Sinn machen. Vielen Dank! – Tom

2

Sie könnten nur tun:

var i = readlineSync.question 

// usage 
i('Testing the prompt: ') 

einen Alias ​​der Funktion Erstellen

Oder, wenn Sie eine ES6 Lage Umgebung verwenden (Knoten 6 oder Chrom):

import { question as i } from 'readline-sync' 

// usage 
i('Testing the prompt: ') 

, die die gleiche ist von:

var i = require('readline-sync').question 

// usage 
i('Testing the prompt: ') 
+0

Ahh, danke! Ich habe versucht herauszufinden, wie man genau das macht. – Tom

1

Sie die return-Anweisung vergessen

function i(context){ 
return readlineSync.question(context) 
} 
Verwandte Themen