最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

了不起的node.js讀書筆記之例程分析

 更新時(shí)間:2014年12月22日 10:12:53   投稿:hebedich  
這篇文章主要介紹了了不起的node.js讀書筆記之例程分析,需要的朋友可以參考下

這周的nodejs學(xué)習(xí)內(nèi)容為幾個(gè)依賴包的使用,把書上的例子都敲了一遍。這篇就以例程為線索,復(fù)習(xí)一下一周的工作。

1.connect

  這個(gè)例程主要是使用connect依賴包,connect提供一個(gè)中間件(由函數(shù)組成,與請(qǐng)求、響應(yīng)對(duì)象交互)的功能。書中也介紹了connect內(nèi)置其他的中間件,這些中間件起到組織代碼完成web功能的作用。

2.session

  使用connect進(jìn)行用戶會(huì)話,進(jìn)行基本的登錄系統(tǒng)。通過中間件實(shí)現(xiàn)了檢查登錄、展示表單、用戶匹配、處理登出的功能。展示了中間件的強(qiáng)大和組織方式。

3.express-tweet

  這章學(xué)習(xí)了用express包,express基于connect。程序設(shè)計(jì)依舊簡(jiǎn)單,不過版本不同的np中,函數(shù)名會(huì)產(chǎn)生一些變化,比如express.createServer()在3.0后就變成了express()。使用express最大的益處就是它簡(jiǎn)潔又不失靈活。不過tweet訪問不到,而改寫成微博時(shí),weibo的API訪問又過于復(fù)雜,這個(gè)程序其實(shí)是沒有成功跑起來的。

4.echo

  這兩個(gè)例程使用的是WebSocket包,echo的功能主要就是記錄消息傳輸?shù)臅r(shí)間。Websocket的調(diào)戲方式就ws來監(jiān)聽(on)一個(gè)事件,在回調(diào)函數(shù)中進(jìn)行處理,在html文件中也要使用js進(jìn)行消息的交互。

5.cursors

  本例學(xué)習(xí)到了廣播,這個(gè)功能通過自己寫的一個(gè)broadcast函數(shù)來進(jìn)行處理。在確保光標(biāo)元素是否存在時(shí),是通過DOM的ID查找來完成的。

6.chat

  這一章可以說是這本書的重頭戲,因?yàn)镾ocket.IO包就是作者開發(fā)的。它與WS的不同在與它的消息傳遞是基于傳輸而不全是WS。這個(gè)例程時(shí)先實(shí)現(xiàn)聊天功能,再實(shí)現(xiàn)廣播歌曲(DJ)功能。過程中也沒有遇到什么大問題。一個(gè)流程就是socket.emit一個(gè)事件,另一端socket就監(jiān)聽到這個(gè)事件,并對(duì)其進(jìn)行處理。

7.總結(jié)

  這周效率還是蠻不錯(cuò)的,遇到的問題依然放在了evernote上。問題以前也出現(xiàn)過就是localhost與127.0.0.1的區(qū)別。這周在調(diào)試js過程中習(xí)得了一個(gè)函數(shù),可以讓js想php一樣dump一個(gè)對(duì)象來?,F(xiàn)在貼在下面分享。

復(fù)制代碼 代碼如下:

 function dump(arr,level) {
     var dumped_text = "";
     if(!level) level = 0;
    
     //The padding given at the beginning of the line.
     var level_padding = "";
     for(var j=0;j<level+1;j++) level_padding += "    ";
    
     if(typeof(arr) == 'object') { //Array/Hashes/Objects
         for(var item in arr) {
             var value = arr[item];
            
             if(typeof(value) == 'object') { //If it is an array,
                 dumped_text += level_padding + "'" + item + "' ...\n";
                 dumped_text += dump(value,level+1);
             } else {
                 dumped_text += level_padding + "'" + item + "' => \"" + value + "\"\n";
             }
         }
     } else { //Stings/Chars/Numbers etc.
         dumped_text = "===>"+arr+"<===("+typeof(arr)+")";
     }
     return dumped_text;
 }

下一周開始學(xué)mongoDB,node的學(xué)習(xí)主要還是通過學(xué)習(xí)例程、閱讀源碼API來提高。畢竟node的優(yōu)點(diǎn)就是網(wǎng)絡(luò)上大片的np。

相關(guān)文章

  • 什么是Node.js?Node.js詳細(xì)介紹

    什么是Node.js?Node.js詳細(xì)介紹

    這篇文章主要介紹了什么是Node.js,Node.js能做什么,Node.js的優(yōu)缺點(diǎn),Node.js的例子等,需要的朋友可以參考下
    2014-06-06
  • nodejs使用PassThrough流進(jìn)行數(shù)據(jù)傳遞合并示例詳解

    nodejs使用PassThrough流進(jìn)行數(shù)據(jù)傳遞合并示例詳解

    這篇文章主要為大家介紹了nodejs使用PassThrough流進(jìn)行數(shù)據(jù)傳遞合并示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-09-09
  • 輕松創(chuàng)建nodejs服務(wù)器(7):阻塞操作的實(shí)現(xiàn)

    輕松創(chuàng)建nodejs服務(wù)器(7):阻塞操作的實(shí)現(xiàn)

    這篇文章主要介紹了輕松創(chuàng)建nodejs服務(wù)器(7):阻塞操作的實(shí)現(xiàn),本文先是組出了代碼,然后對(duì)代碼一一分析,需要的朋友可以參考下
    2014-12-12
  • Node.js如何自動(dòng)審核團(tuán)隊(duì)的代碼

    Node.js如何自動(dòng)審核團(tuán)隊(duì)的代碼

    在項(xiàng)目開發(fā)中,統(tǒng)一團(tuán)隊(duì)的代碼風(fēng)格很重要,本文介紹如何用Node.js來自動(dòng)審核,來提高您的開發(fā)速度。
    2016-07-07
  • Node.js事件的正確使用方法

    Node.js事件的正確使用方法

    這篇文章主要給大家介紹了關(guān)于Node.js事件的正確使用方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Node.js具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • npm發(fā)包實(shí)踐使用gRPC教程

    npm發(fā)包實(shí)踐使用gRPC教程

    這篇文章主要為大家介紹了npm發(fā)包實(shí)踐使用gRPC教程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • npm install常見錯(cuò)誤類型及對(duì)應(yīng)的解決方案

    npm install常見錯(cuò)誤類型及對(duì)應(yīng)的解決方案

    在前端開發(fā)中,npm是最常用的包管理工具,通過 npm install 命令,開發(fā)者可以輕松地安裝項(xiàng)目所需的依賴包,然而,在實(shí)際使用過程中,npm install 可能會(huì)因?yàn)楦鞣N原因而報(bào)錯(cuò),本文將詳細(xì)介紹一些常見的 npm install 錯(cuò)誤類型、發(fā)生原因及其對(duì)應(yīng)的解決方案,需要的朋友可以參考下
    2025-03-03
  • 使用Nodejs連接mongodb數(shù)據(jù)庫的實(shí)現(xiàn)代碼

    使用Nodejs連接mongodb數(shù)據(jù)庫的實(shí)現(xiàn)代碼

    這篇文章主要介紹了使用Nodejs連接mongodb數(shù)據(jù)庫的實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2017-08-08
  • nodejs基于mssql模塊連接sqlserver數(shù)據(jù)庫的簡(jiǎn)單封裝操作示例

    nodejs基于mssql模塊連接sqlserver數(shù)據(jù)庫的簡(jiǎn)單封裝操作示例

    這篇文章主要介紹了nodejs基于mssql模塊連接sqlserver數(shù)據(jù)庫的簡(jiǎn)單封裝操作,結(jié)合實(shí)例形式分析了nodejs中mssql模塊的安裝與操作sqlserver數(shù)據(jù)庫相關(guān)使用技巧,需要的朋友可以參考下
    2018-01-01
  • express中間件加載機(jī)制示例詳解

    express中間件加載機(jī)制示例詳解

    中間件是一種方法,可以接收客戶端發(fā)來的請(qǐng)求,可以對(duì)請(qǐng)求做出響應(yīng),也可以將請(qǐng)求繼續(xù)交給下一個(gè)中間件繼續(xù)處理,下面這篇文章主要給大家介紹了關(guān)于express中間件加載機(jī)制的相關(guān)資料,需要的朋友可以參考下
    2022-08-08

最新評(píng)論

江口县| 奇台县| 洛阳市| 江山市| 南安市| 沧州市| 西乌珠穆沁旗| 巴马| 铜鼓县| 都江堰市| 兴业县| 天等县| 尤溪县| 大田县| 山阳县| 蒙自县| 米林县| 东海县| 铁岭市| 鱼台县| 五原县| 额尔古纳市| 铁力市| 资中县| 城口县| 武山县| 朝阳区| 怀宁县| 自治县| 平昌县| 中江县| 开原市| 通化县| 藁城市| 左贡县| 晋江市| 时尚| 和静县| 阿拉善左旗| 镶黄旗| 孟连|