iT邦幫忙

0

node的process.exit()

請問一下,為什麼我這樣寫
他會直接讀取process.exit()
https://ithelp.ithome.com.tw/upload/images/20181008/20108649cvrRMhXuQZ.jpg

看更多先前的討論...收起先前的討論...
Luis-Chen iT邦新手 4 級 ‧ 2018-10-08 16:59:17 檢舉
https://i.imgur.com/DZbm2xw.jpg 你是要這樣寫嗎
我是他要跑完test()後退出,可是我這樣寫後,他連test()都不會跑
我把process.exit()寫在if裡面,理論上應該要會先跑test()的吧(?
Luis-Chen iT邦新手 4 級 ‧ 2018-10-08 17:36:03 檢舉
從你的需求看,把處理程序的程式碼,放進 a++ 那邊去處理呢?
不行,他就輸出1之後就停了

1 個回答

0
marlin12
iT邦新手 3 級 ‧ 2018-10-08 20:17:47
最佳解答

if(a = 10) 不會吧,不是VBA啊!
另外,對javascript來說,它會跑完[主執行緒],才會處理[事件佇列]。
估計你是想做以下的動作:

var a = 0;

process.on('exit', function(code) {
	console.log('process退出碼為:', code );
});

(function test() {
	var id = setInterval(function() {
        if (++a <= 10) {
            console.log(a);
		} else {
            clearInterval(id);
			process.exit(0);
		}
	}, 300);
})();

多謝您了

我要發表回答

立即登入回答