Node.js學習筆記--第一天

什麼是nodeJs?

對於web前端開發人員來講,初期的js文件是在html文件中經過瀏覽器解析器來解析的,而node.js的出現,使得js文件也能被單獨的解析。
  • 前端開發人員一提到js更多想到的是基於瀏覽器的dom操做,而運行在Node.js中的js做用多數是操做磁盤文件或搭建http服務,Node.js提供了相應的fs,http等內置對象。html

  • Node.js讓前端如獲神器,跳出了瀏覽器的窗口。前端

安裝Node.js

  • NodeJS提供了一些安裝程序,均可以在nodejs.org這裏下載並安裝。node

  • Windows系統下,選擇和系統版本匹配的.msi後綴的安裝文件。Mac OS X系統下,選擇.pkg後綴的安裝文件。web

運行

  • 終端直接輸入代碼運行正則表達式

    $ node
    
    > console.log("hello Kcoder");
    
    hello Kcoder
  • 建立js文件,終端運行js文件瀏覽器

    • 建立sayHello.jsdom

    (function(){
    
    console.log("hello Kcoder");
    
    })();
    • 終端輸入模塊化

    $ node sayHello.js
    
    hello Kcoder

模塊

複雜程序儘可能模塊化會使得邏輯結構更加清晰容易理解,在Node.js中require,exports,module這些預約義好的能夠供使用。
  • require用來傳入別的有導出模塊的文件,這裏的路徑能夠是相對路徑,也能夠是絕對路徑,若是是.js文件,.js可y以省略。函數

var liuwen = require("./liuwen.js");

var liuwen = require("./liuwen");

var liuwen = require("c:/web/liuwen.js");
  • exports是用來導出模塊的公有屬性和方法,測試

exports.liuwen=function(){

    alert("liuwen");

}
  • module是替換當前模塊的導出對象。例如模塊導出對象默認是一個普通對象,若是想改爲一個函數的話,可使用如下方式。

module.exports = function () {

    console.log('liuwen');
    
};

模塊初始化

全部模塊在執行過程當中只初始化一次。
  • 首先由以下結構目錄

- part.js

- main.js
  • part.js內容

var i = 0;
    
    function sayNum (){

    return i += 1;
    
}
  • main.js內容

var part1 = require(./part.js);
    
    var part2 = require(./part.js);
    
    console.log(part1.sayNum());
    
    console.log(part2.sayNum());
    
    console.log(part2.sayNum());
  • 終端運行

$ node main.js
    
    1
    
    2
    
    3

因而可知並無被初始化兩次。

小結

  • Node.js是一個js腳本解析器,操做系統下安裝Node.js的實質是Node.js的執行程序複製到系統目錄下,以便在終端可使用node命令。

  • 終端下直接輸入node命令可進入命令交互模式,很適合用來測試一些JS代碼片斷,好比正則表達式。

  • NodeJS使用CMD模塊系統,主模塊做爲程序入口點,全部模塊在執行過程當中只初始化一次。

  • 除非JS模塊不能知足需求,不然不要輕易使用二進制模塊,不然你的用戶會叫苦不迭。

相關文章
相關標籤/搜索