iT邦幫忙

0

node的process.exit()

  • 分享至 

  • xImage

請問一下,為什麼我這樣寫
他會直接讀取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 你是要這樣寫嗎
tryit iT邦研究生 4 級 ‧ 2018-10-08 17:14:53 檢舉
我是他要跑完test()後退出,可是我這樣寫後,他連test()都不會跑
tryit iT邦研究生 4 級 ‧ 2018-10-08 17:15:43 檢舉
我把process.exit()寫在if裡面,理論上應該要會先跑test()的吧(?
Luis-Chen iT邦新手 4 級 ‧ 2018-10-08 17:36:03 檢舉
從你的需求看,把處理程序的程式碼,放進 a++ 那邊去處理呢?
tryit iT邦研究生 4 級 ‧ 2018-10-08 17:49:58 檢舉
不行,他就輸出1之後就停了
g4ru04 iT邦新手 5 級 ‧ 2020-04-22 18:31:58 檢舉
a= 10 always true
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

0
marlin12
iT邦研究生 5 級 ‧ 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);
})();
tryit iT邦研究生 4 級 ‧ 2018-10-08 22:23:22 檢舉

多謝您了

我要發表回答

立即登入回答