nodeJs和JavaScript的異同(轉)

原文:http://www.javashuo.com/article/p-tolxdxgf-cc.html前端

JavaScript組成:ECMAScript(定義這門語言的基礎,好比語法、數據類型、結構以及一些內置對象等)、DOM(基於ECMASCRIPT,擴展出來的用於操做頁面元素的方法)、BOM(基於ECMASCRIPT,擴展出來的用於操做瀏覽器的一些方法)。node

NodeJS是以ECMASCRIPT爲基礎,而後在這個基礎上擴展出來的一些操做其餘東西(即操做非瀏覽器)的一些方法,好比操做OS操做系統、file文件系統、net網絡、database數據庫等。也就是說nodejs和JS在底層都是同樣的,都是ecmascript,可是擴展出來的功能倒是不同的。一個是偏向於前端瀏覽器,一個是偏向於後端。

在ecmascript部分node和JS實際上是同樣的,好比與數據類型的定義、語法結構,內置對象。但在js中的頂層對象是window對象,可是在node中沒有什麼window對象,node中的頂層對象是global對象。這就是兩者的差別性。數據庫

在window對象中,定義一個全局變量是能夠經過Window來訪問的,可是在node中是不能經過global對象來訪問的,如:
var a=100;
console.log(global.a);這種方式是輸出結果爲undefined
對於上面這個例子,由於在node中定義的變量是模塊中的對象,而並非global全局變量,因此結果爲undefined
ECMAScript中文版:http://lzw.me/pages/ecmascript/
---------------------
做者:敲代碼的貓
來源:CSDN
原文:https://blog.csdn.net/lazycode_cat/article/details/61916291
版權聲明:本文爲博主原創文章,轉載請附上博文連接!後端

相關文章
相關標籤/搜索