国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網(wǎng)站 > WEB開發(fā) > 正文

node.js全局對象和全局變量

2024-04-27 15:16:07
字體:
供稿:網(wǎng)友
        概念:所有屬性都可以在程序的任何地方訪問,即全局變量。在javaScript中,通常window是全局對象,而Node.js的全局對象是global,所有全局變量都是global對象的屬性,如:console、PRocess等。      一、全局對象與全局變量               global最根本的作用是作為全局變量的宿主。滿足以下條件成為全局變量:                1.在最外層定義的變量                2.全局對象的屬性                3.隱式定義的變量(未定義直接賦值的變量)             在Node.js中不可能在最外層定義變量,因為所有用戶代碼都是屬于當(dāng)前模塊的,而模塊本身不是最外層上下文。      二、process                它用于描述當(dāng)前Node.js進程狀態(tài)的對象。提供了一個與操作系統(tǒng)的簡單接口,通常寫本地命令行程序的時候,會用到它。            1.process.argv是命令行參數(shù)數(shù)組,第一個元素是node,第二個元素是腳本文件名,第三個元素開始每個元素是一個運行參數(shù)。            2.process.stdout是標(biāo)準(zhǔn)輸出流,通常我們使用的console.log()  其底層是用 process.stdout.write();實現(xiàn)。            3.prcess.stdin是標(biāo)準(zhǔn)輸入流,初始時它是被暫停的。要想從標(biāo)準(zhǔn)輸入流讀取數(shù)據(jù),必須恢復(fù)流,并手動編寫流的事件相應(yīng)函數(shù)。            4.process.nextTick(callback)的功能是為事件循環(huán)設(shè)置一項任務(wù)。Node.js會在下次事件循環(huán)調(diào)響應(yīng)時調(diào)用callback                Node.js適合IO密集型的應(yīng)用,而不是計算密集型的應(yīng)用。process.nextTick()提供了一個這樣工具,可以把復(fù)雜的工作拆散,編較小的事件程一個。                        function doSomething(args,callback){                somethingComplited(args);                    callback();            }                  doSomething('12345',function onEnd(){                compute();            })             如果假設(shè)compute()和somethingComplited()是兩個較為耗時的函數(shù)。以上的程序在調(diào)用doSomething時會先執(zhí)行somethingComplited(args),然后立即調(diào)用回調(diào)函數(shù),在onEnd()中又會執(zhí)行compute(),改寫為:                             function doSomething(args,callback){                    somethingComplited(args);                    process.nextTick(callback);                }            使用process.nextTick()后,改寫后的程序會把上面耗時的操作拆分為兩個事件,減少每個事件的執(zhí)行時間,提高事件相應(yīng)速度。            5.process其他方法:process.platform()、process.pid()、process.execPath()、process.memoryUsage()等方法。。。                API鏈接:http://nodejs.org/api/process.html        二、console                      java中的log4j的   Logger logger=new Logger(Object.class);                                  logger.info                                  logger.error                                  logger.debug                                                      用于提供控制臺標(biāo)準(zhǔn)輸出,Node.js沿用了這個標(biāo)準(zhǔn),提供與習(xí)慣行為一直的console對象。                    1.console.log().向標(biāo)準(zhǔn)輸出流打印字符并以換行符結(jié)束。                        使用案例:                                console.log("hello");                                console.log("hello%marico");                                console.log("hello%marico"," Mr. ");                    2.console.error();用法與console.log()相同,只是向標(biāo)準(zhǔn)錯誤流輸出。                    3.console. trace();向標(biāo)準(zhǔn)錯誤六輸出當(dāng)前的調(diào)用棧
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 含山县| 筠连县| 双鸭山市| 乐业县| 汾阳市| 徐闻县| 抚松县| 博湖县| 上杭县| 海盐县| 吴旗县| 文山县| 宜兰县| 廊坊市| 绥中县| 大石桥市| 德州市| 桃园市| 兴山县| 凤山县| 德昌县| 青冈县| 玛沁县| 丁青县| 湘潭市| 涞水县| 荣昌县| 铁岭县| 泗水县| 上栗县| 青州市| 从化市| 台东市| 临高县| 普宁市| 崇左市| 同仁县| 福海县| 玉环县| 鹤山市| 建始县|