Time of Update: 2017-01-18
方法說明:將字串轉成對象。說白了其實就是把url上帶的參數串轉成數組對象。(看例子就知道咯)文法:複製代碼 代碼如下:querystring.parse(str, [sep], [eq],
Time of Update: 2017-01-18
方法說明:將obj作為參數傳遞給 util.inspect 並執行,將返回的結果列印到stdout。這個函數忽略任何自訂inspect()函數對象。文法:複製代碼 代碼如下:console.dir(obj)接收參數:obj 任意對象例子:複製代碼 代碼如下:console.dir({"a":"1","b":"2","c":"3"})//輸出結果:字串形式的 {"a":"1","b":"2","c":"3"}源碼:複製代碼
Time of Update: 2017-01-18
方法說明:向標準輸出資料流列印字元並以分行符號結束。文法:複製代碼 代碼如下:console.log([data], [...])接收參數:console.log接受若干個參數,如果只有一個參數,則輸出這個參數的字串形式。如果有多個參數,則以類似於C語言printf()命令的格式輸出。如果沒有參數,只列印一個分行符號。例子:複製代碼 代碼如下:var count = 1234;console.log('count: %d', count);//輸出結果 count :
Time of Update: 2017-01-18
方法說明:同步版的 fs.realpath() 。文法:複製代碼 代碼如下:fs.realpathSync(path, [cache])由於該方法屬於fs模組,使用前需要引入fs模組(var fs= require(“fs”) )接收參數:path
Time of Update: 2017-01-18
方法說明: 修改檔案名稱,可變更檔的存放路徑。文法:複製代碼 代碼如下:fs.rename(oldPath, newPath, [callback(err)])由於該方法屬於fs模組,使用前需要引入fs模組(var fs= require(“fs”) )接收參數:oldPath
Time of Update: 2017-01-18
工作中一直需要對一些官網進行檔案複製,並且替換內部的一些資訊,以前都是手動操作的,或者通過自己寫的firefox擴充來進行檔案操作的。現在前端有nodejs了,為什麼不用nodejs寫個一鍵式的呢~~1.複製目錄複製檔案的時候,如果直接建立一個不存在的檔案目錄下就不成功了。要上級目錄存在才可以。(nodejs API接觸時間不長,如有有誤,謝謝指正)。這樣在寫入檔案的時候就檢測一下目錄是否存在,不存在則判斷上級目錄,之後一級一級目錄建立回來,之後就可以複製檔案了var dirCache = {}
Time of Update: 2017-01-18
算術操作符Lua 的算術操作符有:"+"(加法):複製代碼 代碼如下:print(1 + 2)"-"(減法):複製代碼 代碼如下:print(2 - 1)"*"(乘法):複製代碼 代碼如下:print(1 * 2)"/"(除法):複製代碼 代碼如下:print(1 / 2)"^"(指數):複製代碼 代碼如下:print(27^(-1/3))"%"(模數):複製代碼 代碼如下:print(5 % 3)關係操作符Lua 提供以下關係操作符:複製代碼 代碼如下:< > <= >
Time of Update: 2017-01-18
方法說明: 根據檔案描述符擷取檔案資訊。文法:複製代碼 代碼如下:fs.fstat(fd, [callback(err, stats)])由於該方法屬於fs模組,使用前需要引入fs模組(var fs= require(“fs”) )接收參數:fd
Time of Update: 2017-01-18
使用iojs的jsdom庫與 http://open.baidu.com/special/time/ 同步系統時間。var jsdom = require("jsdom");var exec = require('child_process').exec; jsdom.env({ url: "http://open.baidu.com/special/time/", scripts: ["D:\\jquery-1.9.1.min.js"], features: {
Time of Update: 2017-01-18
方法說明:建立永久連結。文法:複製代碼 代碼如下:fs.link(srcpath, dstpath, [callback(err)])由於該方法屬於fs模組,使用前需要引入fs模組(var fs= require(“fs”) )接收參數:srcpath 為來源目錄或檔案的路徑dstpath
Time of Update: 2017-01-18
什麼是流?說到流,就涉及到一個*nix的概念:管道——在*nix中,流在Shell中被實現為可以通過 |(管道符) 進行橋接的資料,一個進程的輸出(stdout)可被直接作為下一個進程的輸入(stdin)。在Node中,流(Stream)的概念與之類似,代表一種資料流可供橋接的能力。pipe流化的精髓在於 .pipe()方法。可供橋接的能力,在於資料流的兩端(上遊/下遊 或稱為 讀/寫流)以一個 .pipe()方法進行橋接。虛擬碼的表現形式為:複製代碼
Time of Update: 2017-01-18
0x01.關於寫http時候,在接收http請求時候,出現亂碼,後來發現是gzip沒有解壓。關於gzip/deflate壓縮,有放入管道壓縮,和非管道壓縮方法。0x02.管道壓縮Node中的I/O是非同步,因此對磁碟和網路的讀寫需要通過回呼函數來讀取資料。當記憶體中無法一次裝下需要處理的資料時,或者一邊讀取一邊處理更加高效時,我們就需要用到資料流。NodeJS中通過各種Stream來提供對資料流的操作。官網提供了管道方法:複製代碼 代碼如下:// client request
Time of Update: 2017-01-18
像 NodeJS 寫的 TCP 服務可以監聽在某個 sock 檔案(Domain Socket) 上,它的 HTTP 服務也能這麼幹。雖然作為 HTTP 服務串連某個 sock 檔案的意義不大,所以這裡只算是一個純粹的嘗試。TCP 服務是這樣寫複製代碼 代碼如下:var net = require('net');net.createServer(function (socket) { socket.on('data', function (data)
Time of Update: 2017-01-18
緩衝(buffer)模組js起初就是為瀏覽器而設計的,所以能很好的處理unicode編碼的字串,但不能很好的處理位元據。這是Node.js的一個問題,因為Node.js旨在網路上發送和接收經常是以二進位格式傳輸的資料。比如: - 通過TCP串連發送和接收資料; - 從映像或者壓縮檔讀取位元據; - 從檔案系統讀寫資料; -
Time of Update: 2017-01-18
kindEditor官網上中提供了ASP,ASP.NET,JSP相關的整合應用,http://kindeditor.net/docs/upload.html可以參照實現nodejs的整合,發現實用nodejs更簡單環境:unbuntu 14.10nodejs 0.10.35express 4.11.2formidable 1.0.16kindEditor 4.1.10webStorm 81.通過IDE或終端建立一個名稱為test的工程2.編輯package.json添加formidable依賴,
Time of Update: 2017-01-18
一,開篇分析大家好哦,大熊君又來了,昨天因為有點個人的事沒有寫部落格,今天又出來了一篇,這篇主要是寫一個記事本的小應用,前面的文章,我也介紹過“Connect”中介軟體的使用以及“Mongodb”的用法,今天就結合這兩個中介軟體,寫個實際的例子,不斷完善和重構,已達到充分學習的目的。好了,廢話不說了,直接進入主題。二,需求分析(1),使用者註冊,登入功能(沒有涉及很複雜的互動情境,註冊時會有使用者判斷是否已存在)。(2),使用者登入成功,進入筆記管理系統的後台(筆記模組的增刪改查功能)。(3),
Time of Update: 2017-01-18
一,開篇分析大家好,今天這篇文章主要是對"Connect"中介軟體以及相關輔助中介軟體,做一個源碼分析系列,我想上一篇文章大家也看了,介紹了使用方式及用途,而這篇也是出於本人的興趣,讓讀者對其有一個更深入的認識,如在分析階段有什麼不正確的地方,請大家多多指教,好了!老規矩然我們進入正題。先來看一個例子,結合會用引入分析,如下:複製代碼 代碼如下: var connect = require("./lib/connect") ; var app =
Time of Update: 2017-01-18
在Node.js語言中,包和模組並沒有本質的不同,包是在模組的基礎上更深一步的抽象,包將某個獨立的功能封裝起來,用於發布、更新、依賴管理和進資料列版本設定。Node.js根據CommonJS規範實現了包機制,開發了npm來解決包的發布和擷取需求。Node.js的包是一個目錄,其中包含JSON格式的包說明檔案package.json。Node.js的包基本遵循CommonJS規範,因此具備以下特徵:CommonJS規範定義的包特性:1)頂層目錄包含package.json檔案;2)bin目錄存放二
Time of Update: 2017-01-18
方法說明:為指定事件註冊一個 單次 監聽器,所以監聽器至多隻會觸發一次,觸發後立即解除該監聽器。文法:複製代碼 代碼如下:emitter.once(event, listener)接收參數:event (string)
Time of Update: 2017-01-18
方法說明:該方法使可用來重寫 querystring.parse文法:複製代碼 代碼如下:querystring.unescape接收參數:無源碼:複製代碼 代碼如下:// a safe fast alternative to decodeURIComponentQueryString.unescapeBuffer = function(s, decodeSpaces) { var out = new Buffer(s.length); var state =