亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

nodejs學習筆記 -- 全局對象與全局變量

發布時間:2020-06-03 12:06:58 來源:網絡 閱讀:3434 作者:frwupeng517 欄目:web開發

全局對象

在瀏覽器Javascript中,window是全局對象,而Node.js中全局對象是global,所有全局變量(除了global本身以外)都是global對象的屬性。


在Node.js中,我們可以直接訪問到global的屬性,而不需要在應用中包含它。


全局變量

global 最根本的作用是作為全局變量的宿主。按照 ECMAScript 的定義,滿足以下條 件的變量是全局變量:

1、在最外層定義的變量;

2、全局對象的屬性;

3、隱式定義的變量(未定義直接賦值的變量)。


定義一個全局變量時,這個變量同時也會成為全局對象的屬性,反之亦然。需要注 意的是,在 Node.js 中不可能在最外層定義變量,因為所有用戶代碼都是屬于當前模塊的, 而模塊本身不是最外層上下文。 

注意: 永遠使用 var 定義變量以避免引入全局變量,因為全局變量會污染 命名空間,提高代碼的耦合風險。



__filename

雙下劃線filename表示當前正在執行的腳本的文件名,它將輸出文件所在位置的絕對路徑。它和命令行參數所指定的文件名不一定相同。 如果在模塊中,返回的值是模塊文件的路徑。


例子:創建一個main.js,代碼如下:

// 輸出全局變量 __filename 的值
console.log(__filename);


在命令行中執行main.js文件,截圖如下:

nodejs學習筆記 -- 全局對象與全局變量


__dirname

雙下劃線dirname表示當前執行腳本所在的目錄


創建一個main.js,代碼如下:

// 輸出全局變量 __dirname 的值
console.log(__dirname);


在命令行中執行main.js文件,截圖如下:

nodejs學習筆記 -- 全局對象與全局變量


setTimeout(cb,ms)

setTimeout(cb,ms)全局函數在指定的毫秒(ms)數后執行執行指定函數(cb)

setTimeout()只執行一次指定函數,返回一個代表定時器的句柄值


在main.js中創建如下代碼:

function printHello(){
    console.log('Hello World!');
}
//2秒后執行printHello函數
setTimeout(printHello, 2000);


在命令行中執行main.js文件,截圖如下:

nodejs學習筆記 -- 全局對象與全局變量


clearTimeout(t)

clearTimeout(t)全局函數用于停止一個之前通過setTimeout()創建的定時器

參數t是通過setTimeout()函數創建的定時器


在main.js中創建如下代碼:

function printHello(){
    console.log('Hello World!');
}
//2秒后執行printHello函數
var t = setTimeout(printHello, 2000);

//清除定時器
clearTimeout(t);


在命令行中執行main.js文件,截圖如下:

nodejs學習筆記 -- 全局對象與全局變量


setInterval(cb,ms)

setInterval(cb,ms)全局函數在指定的毫秒(ms)數后執行指定函數(cb)

返回一個代表定時器的句柄值。可以使用 clearInterval(t) 函數來清除定時器

setInterval() 方法會不停地調用函數,直到 clearInterval() 被調用或窗口被關閉


在main.js中創建如下代碼:

function printHello(){
    console.log('Hello World!');
}
//2秒后執行printHello函數
setInterval(printHello, 2000);


在命令行中執行main.js文件,截圖如下:

nodejs學習筆記 -- 全局對象與全局變量


console

console 用于提供控制臺標準輸出,它是由 Internet Explorer 的 JScript 引擎提供的調試工具,后來逐漸成為瀏覽器的事實標準。 Node.js 沿用了這個標準,提供與習慣行為一致的 console 對象,用于向標準輸出流(stdout)或標準錯誤流(stderr)輸出字符。


以下為 console 對象的方法:

序號                                                           方法&描述
1

console.log([data][, ...])

向標準輸出流打印字符并以換行符結束。該方法接收若干個參數,如果只有一個參數,則輸出這個參數的字符串形式。如果有多個參數,則 以類似于C 語言 printf() 命令的格式輸出。

2

console.info([data][, ...])

P該命令的作用是返回信息性消息,這個命令與console.log差別并不大,除了在chrome中只會輸出文字外,其余的會顯示一個藍色的驚嘆號。

3

console.error([data][, ...])

輸出錯誤消息的。控制臺在出現錯誤時會顯示是紅色的叉子。

4

console.warn([data][, ...])

輸出警告消息。控制臺出現有×××的驚嘆號。

5

console.dir(obj[, options])

用來對一個對象進行檢查(inspect),并以易于閱讀和打印的格式顯示。

6

console.time(label)

輸出時間,表示計時開始。

7

console.timeEnd(label)

結束時間,表示計時結束。

8

console.trace(message[, ...])

當前執行的代碼在堆棧中的調用路徑,這個測試函數運行很有幫助,只要給想測試的函數里面加入 console.trace 就行了。

9

console.assert(value[, message][, ...])

用于判斷某個表達式或變量是否為真,接手兩個參數,第一個參數是表達式,第二個參數是字符串。只有當第一個參數為false,才會輸出第二個參數,否則不會有任何結果。


console.log():向標準輸出流打印字符并以換行符結束。

console.log 接受若干個參數,如果只有一個參數,則輸出這個參數的字符串形式。如果有多個參數,則 以類似于C 語言 printf() 命令的格式輸出。 

第一個參數是一個字符串,如果沒有參數,只打印一個換行。

nodejs學習筆記 -- 全局對象與全局變量


console.error():與console.log() 用法相同,只是向標準錯誤流輸出

console.trace():向標準錯誤流輸出當前的


創建一個main.js,代碼如下:

console.info('程序開始執行:');

var counter =10;
console.log('計數:%',counter);

console.time('獲取數據');

//
//  執行一些代碼
//

console.timeEnd('獲取數據');

console.info('程序執行完畢');


在命令行中執行main.js文件,截圖如下:

nodejs學習筆記 -- 全局對象與全局變量


process

process process 是一個全局變量,即 global 對象的屬性。 

它用于描述當前Node.js 進程狀態的對象,提供了一個與操作系統的簡單接口。通常在你寫本地命令行程序的時候,少不了要 和它打交道。


下面將會介紹 process 對象的一些最常用的成員方法。

序號                                                事件&描述
1

exit

當進程準備退出時觸發。

2

beforeExit 

當 node 清空事件循環,并且沒有其他安排時觸發這個事件。通常來說,當沒有進程安排時 node 退出,但是 'beforeExit' 的監聽器可以異步調用,這樣 node 就會繼續執行。

3

uncaughtException

當一個異常冒泡回到事件循環,觸發這個事件。如果給異常添加了監視器,默認的操作(打印堆棧跟蹤信息并退出)就不會發生。

4

Signal 事件

當進程接收到信號時就觸發。信號列表詳見標準的 POSIX 信號名,如 SIGINT、SIGUSR1 等。


創建一個main.js,代碼如下:

process.on('exit',function(code){
    //以下代碼永遠不會執行
    setTimeout(function(){
        console.log('該代碼不會執行');
    },0);

    console.log('退出代碼為:',code);
});
console.log('程序執行結束');


在命令行中執行main.js文件,截圖如下:

nodejs學習筆記 -- 全局對象與全局變量


更多關于process的介紹,可參考菜鳥教程

http://www.runoob.com/nodejs/nodejs-global-object.html


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

淳化县| 潞城市| 泗阳县| 泾源县| 大安市| 乐业县| 仁布县| 名山县| 如皋市| 木兰县| 阳高县| 禹州市| 商水县| 黄大仙区| 泽普县| 拉萨市| 高安市| 温宿县| 集贤县| 中牟县| 子长县| 普定县| 本溪| 蒲城县| 安多县| 会东县| 惠东县| 镇原县| 瓮安县| 海口市| 虎林市| 广西| 邛崃市| 阳谷县| 南皮县| 肇源县| 贡觉县| 肥城市| 临城县| 申扎县| 白山市|