2015-11-26 13 views
5

Sono nuovo su node.js Ho appena finito di installarlo sulla mia macchina Windows. In realtà sto seguendo un tutorial su tutorialspoint. Dopo l'installazione mi è stato detto di creare un file main.js e inserire il seguente codice nel file.Errore Node.js per esempio Hello World

/* Hello, World! program in node.js */ 
console.log("Hello, World!") 

I file eseguiti utilizzando main.js Node.js interprete digitando $ main.js nodi, ma ho avuto i seguenti errori.

SyntaxError: Unexpected identifierat Object.exports.createScript  
(vm.js:24:10) 
at REPLServer.defaultEval (repl.js:221:25) 
at bound (domain.js:280:14) 
at REPLServer.runBound [as eval] (domain.js:293:12) 
at REPLServer.<anonymous> (repl.js:412:12) 
at emitOne (events.js:82:20) 
at REPLServer.emit (events.js:169:7) 
at REPLServer.Interface._onLine (readline.js:210:10) 
at REPLServer.Interface._line (readline.js:549:8) 
at REPLServer.Interface._ttyWrite (readline.js:826:14) 

Please help me out. Grazie.

+1

Penso che si esegua il 'nodo main.js' non dalla shell, ma dal nodo REPL) –

+1

Possibile duplicato di [NPT REPL genera SyntaxError: identificatore imprevisto] (http://stackoverflow.com/questions/29227486/node-repl-throws-syntaxerror-identificatore imprevisto) –

risposta

6

Suona come si è nel REPL (Read-Eval-Print-loop). Prova a colpire ctrl + c un paio di volte e controlla se esci dal prompt dei comandi. ALLORA prova a eseguire node main.js. Dovresti vedere l'output desiderato.

+0

Sto usando Windows Machine. – Jayden

+0

Questo non dovrebbe importare. L'errore che hai fatto (credo) è che inserisci "nodo" nel tuo prompt, premi invio, e poi prova a eseguire "node main.js". Non puoi farlo. Basta eseguire "node main.js" dal prompt dei comandi principale. Non fare il primo "nodo" – btwebste

+0

Quindi eseguo ciò che hai detto ma l'output era vuoto senza errori dal cmd. Qualsiasi motivo per quello. Grazie – Jayden

3

Penso che si esegua il node main.js non dalla shell, ma dal nodo REPL.

Non è necessario eseguire node prima.

$ cat main.js 
console.log("Hello, World!") 
$ node main.js 
Hello, World! 

Hm, sei su Windows. Poi si dovrebbe fare qualcosa di simile nel cmd.exe:

c:\...> cd c:\projects\hello 
c:\...> type main.js 
console.log("Hello, World!") 
c:\...> node main.js 
Hello, World! 

Nota: cat e type comandi sopra sono ridondanti e solo per il contenuto del file dimostrazione.


Inoltre, quando si all'interno nodejsREPL, è possibile scrivere javascript codice direttamente.
Basta provare:

> console.log('Hey'); 
'Hey' 
undefined 
> require('./main.js'); 
Hello, World! 
undefined 
> exit 
Bye-bye 
+0

Si prega di spiegare ulteriormente. E quando hai detto cmd.exe, è quello di windows o nodejs cmd? – Jayden

+0

Mi riferisco alla shell standard di Windows. Non so come si installa il tuo nodojs su Windows. Non uso affatto Windows. Potresti aver installato 'cygwin'? –

+0

Non ho però installato cygwin. – Jayden

0

Non eseguire node prima di testare il programma.

+0

potresti spiegare ulteriormente. Grazie – Jayden

+1

quando inserisci 'node' e entri, sarai all'interno del nodo' REPL' environment. In 'REPL', dovresti scrivere direttamente il codice. come 'console.log (" Hello World ")'. Se vuoi testare un file javascript, devi eseguire 'node xx.js'. – yuetsh

0

è possibile eseguire il nodo da qualsiasi luogo utilizzando il normale prompt dei comandi di Windows 7, ma è necessario specificare il nome del file js con il percorso del file esatto.

ad esempio: C: \ Users [il tuo nome]> nodo d: \ projects \ js_files \ main.js

che funzionerà se avete la set path = "c: \ progam \ nodejs \ bin "variabile d'ambiente prima di fare qualsiasi cosa.