2 基本模塊
在node中有且僅有一個全局變量和瀏覽器的全局變量的區別的是
瀏覽器的全局變量是==window==而node的全局變量是==global==
global.console;
process
JavaScript程序是由事件驅動執行的單線程模型,Node.js也不例外。Node.js不斷執行響應事件的JavaScript函數,直到沒有任何響應事件的函數可以執行時,Node.js就退出了。
如果我們想要在下一次事件響應中執行代碼,可以調用process.nextTick():
// test.js
// process.nextTick()將在下一輪事件循環中調用:
process.nextTick(function () {
console.log('nextTick callback!');
});
console.log('nextTick was set!');
用Node執行上面的代碼node test.js,你會看到,打印輸出是:
nextTick was set!
nextTick callback!
這說明傳入process.nextTick()的函數不是立刻執行,而是要等到下一次事件循環。
Node.js進程本身的事件就由process對象來處理。如果我們響應exit事件,就可以在程序即將退出時執行某個回調函數:
// 程序即將退出時的回調函數:
process.on('exit', function (code) {
console.log('about to exit with code: ' + code);
});