使用保存:Node.js的8.x的的node.js:但的readLine最後行不以陣列
目的:讀標準輸入,並將其存儲在數組
錯誤:最後一行沒有按沒有保存在陣列中。
什麼是我對javascript的誤解?異步和同步?
const promise = require('promise')
, readline = require('readline');
const stdRl = readline.createInterface({
input: process.stdin,
output: process.stdout,
terminal: false
});
GLOBAL_COUNTER_READLINE = 0;
GLOBAL_MAPSIZE = 0;
GLOBAL_MAPDATA = [];
stdRl.on('line', (input) => {
// first line : setMapSize
// second line ~ GLOBAL_MAPSIZE : appendMapDataRow
// GLOBAL_MAPSIZE + 1 line : getMapData, countChar
if (GLOBAL_COUNTER_READLINE == 0) {
// setMapSize;
GLOBAL_MAPSIZE = input;
console.log(`Map Size is : ${GLOBAL_MAPSIZE}`);
} else if (GLOBAL_COUNTER_READLINE != GLOBAL_MAPSIZE) {
// appendMapDataRow
GLOBAL_MAPDATA.push(input);
} else if(GLOBAL_COUNTER_READLINE == GLOBAL_MAPSIZE){
//getMapData
for (var row = 0; row < GLOBAL_MAPDATA.length; row++) {
console.log(`${GLOBAL_MAPDATA[row]}`);
}
stdRl.close();
}
GLOBAL_COUNTER_READLINE++;
});
javascript很棒,但對我來說很難。
一個注意:不要使用'新的數字(0)'它不會給你一個普通數字,而是一個包裹的對象,導致違反直覺的結果,如:'新號(0)==新號(0)' - >假 –
感謝您的Mark_M,爲什麼你刪除你的答案....這對我很好。 – ParkDyel