Im a rails/php開發和當前正在學習nodejs,我只是有點困惑,他們不會提供語法錯誤或警告,只要你輸錯東西。當缺少括號時,NodeJS不會給出錯誤通知
例如:
var readline = require('readline');
var rl = readline.createInterface(process.stdin, process.stdout);
var ar = [];
var nm = '';
rl.question("What is your name? ", function(name){
nm = name;
rl.setPrompt(`words? `);
rl.prompt();
rl.on('line', function(str){
ar.push(str.trim());
if(str.toLowerCase().trim() == 'exit'){
rl.close(); // <--- I forgot to add '()' on this line but the program still runs, no warnings at all.
}else{
rl.setPrompt(`add more ('exit' to leave)`);
rl.prompt();
}
});
});
// Because I forgot '()' this event did not execute '
rl.on('close', function(){
console.log(name " " + ar);
process.exit();
});
在其他語言中,它通常表示該線路上的錯誤,但在那裏的NodeJS是沒有和我花了5分鐘,找出原因關閉事件不執行。
我不熟悉這種語言,有人可以解釋爲什麼嗎?
'在其他語言中,它通常會在該行上表示錯誤,這取決於您正在使用的編輯器......如果使用記事本,則不會:)在Node的情況下, VS代碼與JSHint安裝_will_運行一些檢查你的代碼 –
即時通訊使用原子..它不說什麼.. – XDProgrammer
因爲原子是一個文本編輯器。看看https://atom.io/packages/atom-jshint –