欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Node.js的特點(diǎn)詳解

 更新時間:2017年02月03日 11:25:35   作者:麥子學(xué)院  
本文主要對Node.js的特點(diǎn)進(jìn)行詳細(xì)介紹。具有很好的參考價(jià)值,下面跟著小編一起來看下吧

Node.js是一個基于Chrome v8引擎建立的Java運(yùn)行平臺,用于搭建響應(yīng)速度快、易于擴(kuò)展的網(wǎng)絡(luò)應(yīng)用。本文和大家分享的是Node.js的一些特點(diǎn),希望對大家學(xué)習(xí)Node.js有幫助。

異步I/O

這里,我們來詳細(xì)解釋一下:

異步是什么意思

比如說你的爸,今天要叫你做些事情,比如說你要做飯、洗衣服還有掃地,以及燒開水等等一系列的事情。那么,就你一個人來說,你是不是得一件事一件事的挨個做完了之后,才能接著做下一件事。比如說,你是不是燒完開水,然后才來掃地,掃完地然后再來煮飯,煮完飯,你可能才會做其他事情。那么這個過程,我們把它叫做同步的過程。你做一件事,你必須要等待,等待做完了之后,再做另外一件事。那么這個時候,如果我們懂得合理安排時間的話,我們可以這樣辦:我們在燒開水的時候,我們可以掃地,因?yàn)闊_水不用我們守著嘛!只需要把水放好,或點(diǎn)燃就行了。然后,我們可以去做其他事情了。比如說,掃地,或者是洗衣服,等等一系列的事情我們都可以做。那么這樣,在做完了同樣的事情,但是我們所需要花費(fèi)的時間,它是不一樣的。你用后面這種方式,可能用的時間會更短,效率更高。而你用前面那種同步的方式,它的效率會更低。那么,后面這種事情,我們就把它叫做異步的操作。

事件與回調(diào)

如果你采用異步的方式來做事情,它的效率會很高,但是你同時只能做一個事情。比如說,你燒開水的時候,雖然說不用你守在那里。但是你掃地了過后,你這個水燒開的時候,我怎么知道呢?(就是這件事做好了之后,我怎么知道呢?)

于是我們可以想一下,在這個水壺上面,給它放一個小喇叭,當(dāng)這個水燒開了之后會冒蒸汽,當(dāng)這個蒸汽吹響這個喇叭的時候,我們就知道這個事情做好了,水燒開了,我們就可以接著做水燒開之后的事情了。

這個事件與回調(diào)就是:這個水燒開了以后,它會以事件的形式來通知你(我這個事情做好了,你可以把這個水裝好了)。

回調(diào)是什么意思

當(dāng)它的事件發(fā)生了過后,它會通知你,那么你在裝水這個過程,就是在回調(diào)(就是處理這個過程)。處理完燒開水過后的結(jié)果

單線程

這一點(diǎn)是node.js比較大的一個特點(diǎn)。它可以開發(fā)出高效的后臺應(yīng)用(網(wǎng)絡(luò)應(yīng)用)

什么是單線程

還是用剛才那個例子。你爸叫你做很多件事情,如果你不懂的合理安排時間,你就只能用同步;那么同步的時候,你可能會這樣想:我叫我?guī)讉€小伙伴來幫我做這個事情(叫個兩三個小伙伴)。一個幫我燒開水,一個幫我掃地,一個幫我煮飯。這樣操作的話,在同一個時間段,就有多個人來幫你做事情。(這種操作,我們把它叫做多線程操作,就是同一時間段,有多個人來做事情)

多線程操作它有個缺點(diǎn),就是你請這些小伙伴來幫你做事情,肯定要犒勞一下他們,那么你勢必會花費(fèi)一下你的零用錢,你肯定要買點(diǎn)好吃的東西來犒勞一下。那么這樣,如果你不想花你的錢,但是你又想把事情做好,那么你怎么辦呢?只能按照剛才我們異步的方式,就是你一個人做。又要提高效率怎么辦呢?就是我做這件事情的時候,同時又要做其它事情,那么這個就是單線程(就是一個人做事情)。

跨平臺

目前我們的node.js在mac系統(tǒng)上、Windows上面和Linux這些上面,都可以運(yùn)行,它已經(jīng)開發(fā)除了對應(yīng)的運(yùn)行環(huán)境了。

以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時也希望多多支持腳本之家!

相關(guān)文章

  • Node.js API詳解之 module模塊用法實(shí)例分析

    Node.js API詳解之 module模塊用法實(shí)例分析

    這篇文章主要介紹了Node.js API詳解之 module模塊用法,結(jié)合實(shí)例形式分析了Node.js API中module模塊基本功能、原理、用法及操作注意事項(xiàng),需要的朋友可以參考下
    2020-05-05
  • Node.js中的process.nextTick使用實(shí)例

    Node.js中的process.nextTick使用實(shí)例

    這篇文章主要介紹了Node.js中的process.nextTick使用實(shí)例,nextTick函數(shù)有什么用、怎么用、和setTimeout有什么區(qū)別呢,本文就講解了這些知識,需要的朋友可以參考下
    2015-06-06
  • node.js中的http.request.end方法使用說明

    node.js中的http.request.end方法使用說明

    這篇文章主要介紹了node.js中的http.request.end方法使用說明,本文介紹了http.request.end的方法說明、語法、接收參數(shù)、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下
    2014-12-12
  • Node.js中你不可不精的Stream(流)

    Node.js中你不可不精的Stream(流)

    這篇文章主要給大家介紹了關(guān)于Node.js中你不可不精的Stream(流)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-06-06
  • Nodejs如何搭建Web服務(wù)器

    Nodejs如何搭建Web服務(wù)器

    這篇文章主要介紹了Nodejs如何搭建Web服務(wù)器,本文教大家使用 Nodejs搭建一個簡單的Web服務(wù)器,感興趣的小伙伴們可以參考一下
    2016-03-03
  • 詳解基于node的前端項(xiàng)目編譯時內(nèi)存溢出問題

    詳解基于node的前端項(xiàng)目編譯時內(nèi)存溢出問題

    本篇文章主要介紹了基于node的前端項(xiàng)目編譯時內(nèi)存溢出問題,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • 關(guān)于npm?i幾種常見命令的區(qū)別詳解

    關(guān)于npm?i幾種常見命令的區(qū)別詳解

    npm(Node.js Package Manager)是一個Node.js的包管理工具,用來解決Node.js代碼部署問題,下面這篇文章主要給大家介紹了關(guān)于npm?i幾種常見命令的那點(diǎn)事,需要的朋友可以參考下
    2023-03-03
  • node.js安裝及環(huán)境配置超詳細(xì)步驟講解(Windows系統(tǒng)安裝包方式)

    node.js安裝及環(huán)境配置超詳細(xì)步驟講解(Windows系統(tǒng)安裝包方式)

    這篇文章主要介紹了node.js安裝及環(huán)境配置超詳細(xì)教程(Windows系統(tǒng)安裝包方式),本文分步驟通過圖文并茂的形式給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2023-02-02
  • Node 創(chuàng)建第一個服務(wù)器應(yīng)用的操作方法

    Node 創(chuàng)建第一個服務(wù)器應(yīng)用的操作方法

    Node.js是一個基于Chrome V8引擎的JavaScript運(yùn)行環(huán)境,可以用于構(gòu)建高性能的網(wǎng)絡(luò)應(yīng)用程序,它采用事件驅(qū)動、非阻塞I/O模型,使得程序可以以高效地方式處理并發(fā)請求,這篇文章主要介紹了Node 創(chuàng)建第一個服務(wù)器應(yīng)用,需要的朋友可以參考下
    2024-02-02
  • Node.js中npm常用命令大全

    Node.js中npm常用命令大全

    這篇文章主要介紹了Node.js中npm常用命令大全的相關(guān)資料,非常不錯具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-06-06

最新評論