? ? 本來還在糾結著到底要學哪一種后臺語言呢,突然發現node.js很火,既然能被這么多人推崇,自然是有他的優勢的。去百度百科看了一眼,或許是我理解能力太差,并沒有了解到很多關于node.js的東西,大概就是知道了Node.js是一種用javascript來編寫的服務器端腳本,而node就是提供Javascript運行的平臺。好吧,還是模模糊糊,嗯,越是不清楚,就越是能激發我的學習欲望。
? ? 今天算是正式開始自學了,我發現對于這個新技術,學習的資源好像不是很多,書和視屏都不是很多,而且據大家評價,即使是入門書,看起來也是很費勁的。有點小驚訝,node.js這么難嗎?最后找了一本 Node入門 ,然后下載安裝node.js,下載安裝Git Bash(windows下的命令工具,其實也不清楚是不是用這個,先摸索看看),好了,準備工作就做好了,那就開始學吧。
? ? 照例,第一個例子是 Hello World,好吧,問題來了,寫好的 console.log("Hello World");?這個js文件要存在哪個目錄里呢,也就是node默認的搜索路徑是什么呢?興許是我太笨了,居然連這個都不知道,不知道有沒有別的初學者跟我有一樣的問題。既然問題來了那就解決吧,各種搜索查找了很久,未果。嗯,那我就自己來試吧,無外乎安裝的那幾個目錄嘛,一個個的總能試到的,果然是試玩了所有的安裝目錄都不對呀,有點小崩潰。這時候我突然看到了一條提示消息,Cann't find module 'C:\Users\dandan\hello.js',好吧,原來在這里,嗯,第一個小例子終于弄好了。繼續看書,搭建服務器模塊:
?
var http = require("http"); http.createServer(function(request, response) {response.writeHead(200, {"Content-Type": "text/plain"});response.write("Hello World");response.end(); }).listen(8888);
?
? ?嗯,就這樣照著書上做吧,一邊看一邊做差不多用了六個小時就吧這本四十多頁的書過完了,以下是我第一遍看完學到的一點點東西:
? ?1.node.js自帶了一個http模塊,這個模塊提供了一個函數:createServer,這個函數會返回一個對象,這個對象有一個叫listen的方法,這個方法有一個參數,指定http服務器監聽的端口號。
? 2.node.js里有三個內置對象(我目前所知的三個):require:用于在當前模塊中加載和使用別的模塊;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? exports:用于導出模塊的公有方法和屬性;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? module:多用于替換當前模塊的導出對象。
? 3.一個比較完整的服務器腳本由服務器,請求路由及請求處理程序組成。
? 4.幾個在Javascript里沒見過的語法:querystring,fs,formidabled……鑒于剛接觸,不敢亂寫,這幾個要深入學習之后再寫。
? 總結一下,雖說node.js也用的是Javascript語言,但是感覺還是很不一樣,應該是跟寫前端的思想不一樣,有點轉換不過來,雖然語法代碼寫寫查查都能明白的差不多,但是深深的感覺到思想跟不上,這才是偵結所在。另外,如果有Linux基礎的,來學這個應該是有不少幫助的。嗯,繼續吧,把書再從頭看一遍。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?