溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

node.js是不是高級(jí)語(yǔ)言

發(fā)布時(shí)間:2021-12-10 09:41:38 來(lái)源:億速云 閱讀:130 作者:iii 欄目:web開(kāi)發(fā)

本篇內(nèi)容介紹了“node.js是不是高級(jí)語(yǔ)言”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

node.js不是高級(jí)語(yǔ)言,而是一個(gè)基于Chrome V8引擎的JavaScript運(yùn)行環(huán)境,是一個(gè)讓JavaScript運(yùn)行在服務(wù)端的開(kāi)發(fā)平臺(tái),用來(lái)支持JavaScript代碼的執(zhí)行,用于方便地搭建響應(yīng)速度快、易于擴(kuò)展的網(wǎng)絡(luò)應(yīng)用。

node.js是不是高級(jí)語(yǔ)言

本教程操作環(huán)境:windows7系統(tǒng)、nodejs 12.19.0版,DELL G3電腦。

JavaScript 誕生于 1995 年,幾乎是和互聯(lián)網(wǎng)同時(shí)出現(xiàn);Node.js 誕生于 2009 年,比 JavaScript 晚了 15 年左右。

在 Node.js 之前,JavaScript 只能運(yùn)行在瀏覽器中,作為網(wǎng)頁(yè)腳本使用,為網(wǎng)頁(yè)添加一些特效,或者和服務(wù)器進(jìn)行通信。有了 Node.js 以后,JavaScript 就可以脫離瀏覽器,像其它編程語(yǔ)言一樣直接在計(jì)算機(jī)上使用,想干什么就干什么,再也不受瀏覽器的限制了。

Node.js 不是一門(mén)新的編程語(yǔ)言,也不是一個(gè) JavaScript 框架,它是一個(gè)基于Chrome V8引擎的JavaScript運(yùn)行環(huán)境,是一個(gè)讓JavaScript運(yùn)行在服務(wù)端的開(kāi)發(fā)平臺(tái),用來(lái)支持JavaScript代碼的執(zhí)行。用編程術(shù)語(yǔ)來(lái)講,Node.js 是一個(gè) JavaScript 運(yùn)行時(shí)(Runtime)。

Node.js對(duì)一些特殊用例進(jìn)行優(yōu)化,提供替代的API,使得V8在非瀏覽器環(huán)境下運(yùn)行得更好,V8引擎執(zhí)行Javascript的速度非???,性能非常好,基于Chrome JavaScript運(yùn)行時(shí)建立的平臺(tái), 用于方便地搭建響應(yīng)速度快、易于擴(kuò)展的網(wǎng)絡(luò)應(yīng)用。

Node.js 的誕生

JavaScript 的一生伴隨著瀏覽器大戰(zhàn)。JavaScript 由 Netscape(網(wǎng)景)瀏覽器發(fā)布,但是 Netscape 在和 IE 的競(jìng)爭(zhēng)中落敗,早已不復(fù)存在;后來(lái)谷歌公司的 Chrome 瀏覽器異軍突起,憑借強(qiáng)悍的性能把 IE 按在地上摩擦。

谷歌公司在 Chrome 瀏覽器中集成了一種名為“V8”的 JavaScript 引擎(也即 JavaScript 解釋器),它能夠非??焖俚亟馕龊蛨?zhí)行 JavaScript 代碼。

V8 引擎使用 C++ 語(yǔ)言編寫(xiě),可以獨(dú)立運(yùn)行,也可以嵌入到任何其它 C++ 程序中。谷歌公司將 V8 引擎甚至整個(gè) Chrome 瀏覽器都開(kāi)源了,任何人都可以免費(fèi)地將 V8 應(yīng)用到自己的項(xiàng)目中。

V8 引擎的強(qiáng)大,以及當(dāng)年 JavaScript 的火爆,使得一名叫 Ryan Dahl 的程序員動(dòng)起了“歪心思”,他希望在瀏覽器之外再為 JavaScript 構(gòu)建一個(gè)運(yùn)行時(shí),讓 JavaScript 能夠直接在計(jì)算機(jī)上運(yùn)行,這樣 JavaScript 就能像 Python、Ruby、PHP 等其它腳本語(yǔ)言一樣大展宏圖,不必再受限于瀏覽器,只能做一些小事情。

Ryan Dahl 和他的團(tuán)隊(duì)真的做到了,并且做得很好,他們將這套獨(dú)立的 JavaScript 運(yùn)行時(shí)命名為 Node.js;為了避免被誤認(rèn)為是 JavaScript 框架,現(xiàn)在也經(jīng)常簡(jiǎn)稱(chēng)為 Node。

Node.js的優(yōu)勢(shì)

1、前端/后端開(kāi)發(fā)使用同一種語(yǔ)言

像 ASP.NET 或 Spring 這樣的技術(shù)需要開(kāi)發(fā)人員學(xué)習(xí)一門(mén)新的服務(wù)端語(yǔ)言,比如C#,VB.NET 或者 Java。而 Node.js在服務(wù)端和客戶(hù)端都是使用 JavaScript,這意味著開(kāi)發(fā)人員在各層上只需使用一門(mén)語(yǔ)言。

2、容易學(xué)會(huì),對(duì)于開(kāi)發(fā)者易轉(zhuǎn)型

有一個(gè)事實(shí)就是 JavaScript 是 Web 開(kāi)發(fā)者們熟知的語(yǔ)言,大部分人都了解 JavaScript 或多少使用過(guò)它。所以說(shuō),一個(gè) Web開(kāi)發(fā)人員從其他技術(shù)轉(zhuǎn)型到 Node.js 是很簡(jiǎn)單的。

3、輕量

Node.js 使用的是事件驅(qū)動(dòng)架構(gòu),這就是說(shuō)在它上面做的每一件事,每一個(gè)獨(dú)立的調(diào)用和操作,都是一系列的異步回調(diào)。這使得 Node.js運(yùn)行在一個(gè)線程上,這一點(diǎn)和其它的 Web 技術(shù)是不同的,它們每個(gè)客戶(hù)端的請(qǐng)求都會(huì)生成一個(gè)新的線程來(lái)處理。這也正是非阻塞I/O的本質(zhì)所在。

4、支持 NoSQL 數(shù)據(jù)庫(kù)

在 Node.js 應(yīng)用中使用像 MongoDB 這樣的 NoSQL 數(shù)據(jù)庫(kù)簡(jiǎn)是十分常見(jiàn)的,MongoDB 和傳統(tǒng)的 SQL數(shù)據(jù)庫(kù)不同的是,它使用的是基于文檔的模型而非關(guān)系型模型,它用的不是表,而是類(lèi)似 JSON 這樣的對(duì)象。這就很適合 ORM 的熱愛(ài)者了。

5、有很好的 IDE 和代碼編輯器支持

JavaScript 已經(jīng)存在相當(dāng)長(zhǎng)一段時(shí)間了,所以像 Visual Studio,Eclipse 這樣的 IDE 都是支持 JavaScript代碼提示和高亮的,另外像 NotePad++ 和 Sublime Text 之類(lèi)的代碼編輯器也同樣支持這些。

6、代碼托管服務(wù)支持廣泛

一些 Web 服務(wù)器和云服務(wù)提供商都支持 Node.js 的 Web 應(yīng)用。我們?cè)谶@里說(shuō)幾個(gè),包括 Google,Microsoft IIS,Heroku,Microsoft Azure,Amazon(AWS)等等。

“node.js是不是高級(jí)語(yǔ)言”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI