官术网_书友最值得收藏!

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ù)。

主站蜘蛛池模板: 勐海县| 唐河县| 新绛县| 桃江县| 溧阳市| 九寨沟县| 临猗县| 临汾市| 天长市| 启东市| 龙陵县| 大新县| 平果县| 靖西县| 阳高县| 静宁县| 宜昌市| 西峡县| 广河县| 长汀县| 买车| 富源县| 荥阳市| 扎鲁特旗| 得荣县| 简阳市| 靖宇县| 谢通门县| 句容市| 龙陵县| 景泰县| 响水县| 固始县| 巨野县| 双牌县| 满城县| 临江市| 安达市| 通城县| 眉山市| 兰西县|