首頁 >web前端 >js教程 >js和node.js的差別是什麼? js與node.js異同總結

js和node.js的差別是什麼? js與node.js異同總結

寻∝梦
寻∝梦原創
2018-09-05 16:09:233479瀏覽

關於node.js和javascript的差別你知道嗎?關於node.js與javascript的相同點你又知道嗎?要是都不知道,那還不快來看這篇文章,你還在等什麼,現在就看吧

一、我們先看看js和node.js的對比情況:

JavaScript:

ECMAScript(語言基礎,如:語法、資料類型結構以及一些內建物件)

DOM(一些操作頁面元素的方法)

BOM(一些操作瀏覽器的方法)

上面就是JavaScript的組成部分,那麼Nodejs呢?

Nodejs:

ECMAScript(語言基礎,如:語法、資料類型結構以及一些內建物件)

os(作業系統)

file(檔案系統)

net(網路系統)

database(資料庫)

分析:很容易看出,前端和後端的js相同點就是,他們的語言基礎都是ECMAScript,只是他們所擴充的東西不同,前端需要操作頁面元素,於是擴充了DOM,也需要操作瀏覽器,於是就擴充了BOM。而服務端的js則也是基於ECMAScript擴展出了服務端所需的一些API,稍微了解後台的童鞋肯定知道,後台語音有操作系統的能力,於是擴展os,需要有操作文件的能力,於是擴展出file檔案系統、需要操作網絡,於是擴充出net網路系統,需要操作數據,於是要擴充出database的能力。

這麼一對比,相信很多小夥伴對nodejs更加了解了,原來前端和服務端的js如此相似,他們的基礎是相同的,只是環境不同,導致他們擴展出來的東西不同而已。 (想看更多就到PHP中文網node.js影片教學欄位學習,看影片也能學習)

二、js與node.js異同總結:

javascript組成:ecmascript(定義這門語言的基礎,例如語法、資料類型、結構以及一些內建物件等)、DOM(基於ecmascript,擴展出來的用於操作頁面元素的方法) 、BOM(基於ecmascript,擴展出來的用於操作瀏覽器的一些方法)。

nodejS是以ECMASCRIPT為基礎,然後在這個基礎上擴展出來的一些操作其他東西(即操作非瀏覽器)的一些方法,例如操作OS作業系統、file檔案系統、net網路、database資料庫等。也就是說nodejs和JS在底層都是一樣的,都是ecmascript,但擴充出來的功能卻是不一樣的。一個是偏向前端瀏覽器,一個是偏向後端。

在ecmascript部分node和JS其實是一樣的,像是與資料類型的定義、語法結構,內建物件。但在js中的頂層物件是window對象,但是node中沒有什麼window對象,node中的頂層物件是global物件。這就是二者的差異性。

三、還有些很容易就看出來的差異:

  • JavaScript是一門語言

  • node.js不是一門語言,也不是一種特殊的JavaScript方言- 它只是用來執行普通JavaScript程式碼的東西

  • 所有瀏覽器都有執行網頁上JavaScript的JavaScript引擎。 Firefox有叫做Spidermonkey的引擎,Safari有JavaScriptCore,Chrome有V8

  • node.js就是有能操作I/O和網路庫的V8引擎,因此你能夠在瀏覽器以外使用JavaScript創建shell腳本和後台服務或運行在硬體上

  • Javascript是一種web前端語言,主要用於web開發中,由瀏覽器解析執行

  • Node.js是一個可以快速建立網路服務及應用的平台,是用Javascript語言建構的服務平台,可用來後端建立伺服器

他們都用的是js語法,前者主要應用前端後者主要應用與後端

  • node.js和javascript區別還是挺大的,1個平台,1個是程式語言;

  • javascript是客戶端程式語言,需要瀏覽器的javascript解釋器進行解釋執行;

  • node.js是一個基於Chrome JavaScript運行時建立的平台,它是對Google V8引擎進行了封裝的運行環境;

  • 簡單的說node.js就是把瀏覽器的解釋器封裝起來作為伺服器運行平台,用類似javascript的結構語法進行編程,在node.js上運行。

以上就是這篇關於node.js和js的區別和異同總結(想學更多就到PHP中文網node.js中文參考手冊欄目)。全文簡單易懂,有問題的可以在下方留言。

【小編推薦】

node.js的優勢是什麼? node的優點和缺點的介紹

node.js適合做什麼?用node.js的好處在哪裡?

#

以上是js和node.js的差別是什麼? js與node.js異同總結的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn