- Node.js 12實(shí)戰(zhàn)
- 趙榮嬌
- 456字
- 2022-07-27 19:18:52
1.4 JavaScript與Node.js對(duì)比
1.1節(jié)介紹過(guò),前端的JavaScript其實(shí)是由ECMAScript、DOM、BOM組合而成的。那么Node.js是由哪些部分組成的呢?
Node.js是由以下5個(gè)不同部分組成的:
· ECMAScript:語(yǔ)言基礎(chǔ),如語(yǔ)法、數(shù)據(jù)類(lèi)型結(jié)構(gòu)以及一些內(nèi)置對(duì)象。
· OS:即操作系統(tǒng)交互部分。
· File:文件系統(tǒng)。
· Net:網(wǎng)絡(luò)系統(tǒng)。
· Database:數(shù)據(jù)庫(kù)。
很容易看出,前端和后端的JavaScript相同點(diǎn)就是,二者的語(yǔ)言基礎(chǔ)都是ECMAScript,只是所擴(kuò)展出來(lái)的內(nèi)容不同。前端需要操作頁(yè)面元素,因此需要DOM;需要操作瀏覽器,因此需要擴(kuò)展BOM。而服務(wù)端的JavaScript則是基于ECMAScript擴(kuò)展出了服務(wù)端所需要的一些API,后臺(tái)需要有操作系統(tǒng)的能力,因此擴(kuò)展OS;需要有操作文件的能力,因此擴(kuò)展出File文件系統(tǒng);需要操作網(wǎng)絡(luò),因此擴(kuò)展出Net網(wǎng)絡(luò)系統(tǒng);需要操作數(shù)據(jù),因此擴(kuò)展出Database的能力。
前端和服務(wù)端的JavaScript相似,基礎(chǔ)是相同的,但由于運(yùn)行環(huán)境不同,導(dǎo)致所擴(kuò)展出來(lái)的相關(guān)內(nèi)容不同。JavaScript是一門(mén)完整的語(yǔ)言,可以使用在不同的上下文中。Node.js就是另外一種上下文,它允許脫離瀏覽器環(huán)境運(yùn)行JavaScript代碼,使用V8虛擬機(jī)來(lái)解釋和執(zhí)行JavaScript代碼。同時(shí),Node.js提供許多有用的模塊,用于簡(jiǎn)化重復(fù)工作。
因此,Node.js事實(shí)上既是一個(gè)運(yùn)行時(shí)環(huán)境,又是一個(gè)庫(kù)。
- Testing with JUnit
- Power Up Your PowToon Studio Project
- 區(qū)塊鏈:以太坊DApp開(kāi)發(fā)實(shí)戰(zhàn)
- SQL Server 2012數(shù)據(jù)庫(kù)管理與開(kāi)發(fā)項(xiàng)目教程
- 零基礎(chǔ)學(xué)Python數(shù)據(jù)分析(升級(jí)版)
- Windows Forensics Cookbook
- 從0到1:Python數(shù)據(jù)分析
- Asynchronous Android Programming(Second Edition)
- C++從入門(mén)到精通(第5版)
- Learning Continuous Integration with TeamCity
- Kotlin開(kāi)發(fā)教程(全2冊(cè))
- Web前端應(yīng)用開(kāi)發(fā)技術(shù)
- 深入淺出Go語(yǔ)言編程
- 開(kāi)源項(xiàng)目成功之道
- HTML5+CSS3+jQuery Mobile APP與移動(dòng)網(wǎng)站設(shè)計(jì)從入門(mén)到精通