2014-06-18 62 views
1

我試圖從命令行運行一個簡單的JavaScript程序,並得到一個意外的錯誤。提示似乎是一個簡單的JavaScript命令;不知道爲什麼沒有定義。「提示未定義」使用命令行中的節點?

我test.js文件:

console.log("I will now ask you for your name."); 
var name = prompt("Enter your name"); 
console.log("Hello ".concat(name, ". How are you")); 

我跑這樣的:

C:\directory\node test.js 
I will now ask you for your name. 

C:\directory\test.js:2 
var name = prompt("Enter your name"); 

Reference Error: prompt is not defined 
+1

這不是Java。 –

+1

您可能想使用[readline](http://nodejs.org/api/readline.html)。 'window.prompt()'是一個web瀏覽器實現的函數,但它不是node.js中的本地函數。 –

+6

Node.JS也不是JavaScript。在服務器端沒有'prompt()'JS –

回答

1

我想你可能有興趣在此代碼:

console.log("I will now ask you for your name."); 
process.stdin.setEncoding('utf8'); 
var name; 
process.stdin.on('readable', function() { 
    name = process.stdin.read(); 
    if (name !== null) { 
     console.log("Hello ".concat(name, ". How are you")); 
     process.exit(); 
    } 
}); 

這是node.js做你需要做的事情的方式。 希望這有助於!