- 什麼是nodeJS
nodeJS是一個平臺,是一個事件驅動I/O服務端JavaScript環境,同時也是一個基於Chorme(谷歌) V8引擎的JavaScript運行環境.V8引擎執行Javascript的速度非常快,性能非常好。
在學習nodeJs之前,需要了解瀏覽器是如何訪問網站的 :
主要分爲以下幾個步驟
1),瀏覽器地址欄輸入網址
2),瀏覽器通過用戶在地址欄中輸入的url構建http請求
3),瀏覽器發起DNS接線請求,將域名轉化爲IP地址
4),瀏覽器將請求報文發送給服務器
5),服務器接收請求報文,並解析
6),服務器處理用戶請求,並將處理的結果封裝成http響應報文
7),服務器將http響應的報文發送給瀏覽器
8),瀏覽器接收服務器相應的http報文,並解析
9),瀏覽器解析HTML界面並展示,在解析html頁面時遇到新的資 源,需要再次發起請求
10),瀏覽器展示html界面(渲染)
- 開始學習nodeJS
首先在使用nodeJS之前需要在電腦中搭建nodeJS環境,搭建nodeJS所需要的安裝文件及安裝方法可以在 Node.JS中文網下載
下面附上鍊接 http://nodejs.cn/
在安裝完成後可以使用nodeJS自帶的環境編譯器 : REPL(交互式解釋器)
在終端中輸入node
進入,輸入.exit
或者雙擊CTRL+c 退出
- 全局變量
在node環境中不存在Window對象,但是有類似Window的global對象
在提到全局變量時,需要引入一個概念 : Node.js模塊系統
爲了讓Node.js的文件可以相互調用,Node.js提供了一個簡單的模塊系統。
模塊是Node.js 應用程序的基本組成部分,文件和模塊是一一對應的。
換言之,一個 Node.js 文件就是一個模塊這個文件可能是JavaScript 代碼、JSON 或者編譯過的C/C++ 擴展。
Node.js 提供了 exports 和 require 兩個對象,其中 exports 是模塊公開的接口,require 用於從外部獲取一個模塊的接口,即所獲取模塊的 exports 對象。
導出模塊成員有兩種方法:
var sum=100;
第一種方式: exports.sum=sum;
第二種方式: module.exports=sum;
下面介紹global中的一些對象 :
_ _filename : 表示當前正在執行的腳本的文件名。它將輸出文件所在位置的絕對路徑,且和命令行 參數所指定的文件名不一定相同。 如果在模塊中,返回的值是模塊文件的路徑。
__dirname : 表示當前執行腳本所在的目錄。
setTimeout(cb, ms) : 全局函數在指定的毫秒(ms)數後執行指定函數(cb)。
clearTimeout(t) : 全局函數用於停止一個之前通過 setTimeout() 創建的定時器。參數 t 是通過 setTimeout() 函數創建的定時器。
setInterval(cb, ms) : 全局函數在指定的毫秒(ms)數後執行指定函數(cb)。
console : 用於提供控制檯標準輸出
process : 是一個全局變量,即 global 對象的屬性.