Node.js簡(jiǎn)介

  • Node.js 是什么
    • JavaScript 運(yùn)行時(shí)
    • 既不是語(yǔ)言,也不是框架,它是一個(gè)平臺(tái)(執(zhí)行環(huán)境)
  • Node.js能做什么
    • Web服務(wù)器后臺(tái)
    • 命令行工具
  • Node.js 中的 JavaScript
    • 沒(méi)有 BOM、DOM
    • EcmaScript 基本的 JavaScript 語(yǔ)言部分
    • 在 Node 中為 JavaScript 提供了一些服務(wù)器級(jí)別的 API
      • 文件操作的能力
      • http 服務(wù)的能力

安裝

  • 模塊系統(tǒng)
    • 在 Node 中沒(méi)有全局作用域的概念
    • 在 Node 中,只能通過(guò) require 方法來(lái)加載執(zhí)行多個(gè) JavaScript 腳本文件
    • require 加載只能是執(zhí)行其中的代碼,文件與文件之間由于是模塊作用域,所以不會(huì)有污染的問(wèn)題
      • 模塊完全是封閉的
      • 外部無(wú)法訪問(wèn)內(nèi)部
      • 內(nèi)部也無(wú)法訪問(wèn)外部
    • 模塊作用域固然帶來(lái)了一些好處,可以加載執(zhí)行多個(gè)文件,可以完全避免變量命名沖突污染的問(wèn)題
    • 但是某些情況下,模塊與模塊是需要進(jìn)行通信的
    • 在每個(gè)模塊中,都提供了一個(gè)對(duì)象:exports
    • 該對(duì)象默認(rèn)是一個(gè)空對(duì)象
    • 你要做的就是把需要被外部訪問(wèn)使用的成員手動(dòng)的掛載到 exports 接口對(duì)象中
    • 然后誰(shuí)來(lái) require 這個(gè)模塊,誰(shuí)就可以得到模塊內(nèi)部的 exports 接口對(duì)象
    • 還有其它的一些規(guī)則,具體后面講,以及如何在項(xiàng)目中去使用這種編程方式,會(huì)通過(guò)后面的案例來(lái)處理
  • 核心模塊
    • 核心模塊是由 Node 提供的一個(gè)個(gè)的具名的模塊,它們都有自己特殊的名稱標(biāo)識(shí),例如
      • fs 文件操作模塊
      • http 網(wǎng)絡(luò)服務(wù)構(gòu)建模塊
      • os 操作系統(tǒng)信息模塊
      • path 路徑處理模塊
      • 。。。。
    • 所有核心模塊在使用的時(shí)候都必須手動(dòng)的先使用 require 方法來(lái)加載,然后才可以使用,例如:
      • var fs = require('fs')
  • http
    • require
    • 端口號(hào)
      • ip 地址定位計(jì)算機(jī)
      • 端口號(hào)定位具體的應(yīng)用程序
    • Content-Type
      • 服務(wù)器最好把每次響應(yīng)的數(shù)據(jù)是什么內(nèi)容類型都告訴客戶端,而且要正確的告訴
      • 不同的資源對(duì)應(yīng)的 Content-Type 是不一樣,具體參照:http://tool.oschina.net/commons
      • 對(duì)于文本類型的數(shù)據(jù),最好都加上編碼,目的是為了防止中文解析亂碼問(wèn)題
    • 通過(guò)網(wǎng)絡(luò)發(fā)送文件
      • 發(fā)送的并不是文件,本質(zhì)上來(lái)講發(fā)送是文件的內(nèi)容
      • 當(dāng)瀏覽器收到服務(wù)器響應(yīng)內(nèi)容之后,就會(huì)根據(jù)你的 Content-Type 進(jìn)行對(duì)應(yīng)的解析處理


        node.js基礎(chǔ).png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Node.js是目前非?;馃岬募夹g(shù),但是它的誕生經(jīng)歷卻很奇特。 眾所周知,在Netscape設(shè)計(jì)出JavaScri...
    w_zhuan閱讀 3,731評(píng)論 2 41
  • topics: 1.The Node.js philosophy 2.The reactor pattern 3....
    宮若石閱讀 1,234評(píng)論 0 1
  • Node.js是目前非?;馃岬募夹g(shù),但是它的誕生經(jīng)歷卻很奇特。 眾所周知,在Netscape設(shè)計(jì)出JavaScri...
    Myselfyan閱讀 4,199評(píng)論 2 58
  • 今天就是周五了,也就是運(yùn)動(dòng)會(huì)的最后一天了。我們既期待我們的表現(xiàn),也期待我們的成績(jī)。那么表現(xiàn)又怎么樣呢,我們一...
    萬(wàn)瑞瑩閱讀 1,171評(píng)論 0 0
  • 我經(jīng)常失眠,時(shí)常在尚未入睡時(shí)疲憊不堪,而躺到床上之后卻愈發(fā)清醒。有時(shí),這確實(shí)是十分痛苦的經(jīng)歷,有許多人甚至因?yàn)槭冀K...
    DeerCall閱讀 448評(píng)論 0 0

友情鏈接更多精彩內(nèi)容