在我剛開始學習JS的時候可能每個人的後端框架都不一樣,像我是使用rails,就會看到在產生新專案的時候有一個Node.js這個東西,但並不知道它跟瀏覽器的JS差別在哪,今天就來淺入的探討他們之間的差別吧!
Node.js就是一個能夠執行JS的環境,其實就很像是瀏覽器提供一個環境讓JS能夠執行一樣。
如果你還看不懂的話,簡單來講就是建立一個執行環境給JS,讓server端也能成功執行JS!
所以說能夠在開發人員工具上撰寫JS是因為瀏覽器的緣故,並且切記,在瀏覽器上才有所謂的window
這個全域物件,在Node裡只有global
而已
其實Node.js大家都可以使用自己的終端機去執行它並直接在裡面寫JS但大部分的人還是直接在瀏覽器做操作,那麼瀏覽器有提供「BOM」、「DOM」這兩個部分,才能夠操作JS,然而Node.js並沒有這兩個部分
JS算是前端開發的語言,而Node.js其實是在後端執行的,為什麼還要這樣子將前端的語言放來後端開發?原因很簡單其實就是JS是透過事件來做處理的,所以說控制好每一個事件,其實不容易在執行的時候出現卡死的狀況,才有人會把JS拿來後端開發。
另一個差別就像上述所說,瀏覽器的全域物件是window
,但在Node.js環境底下的global
雖然跟window
有百分之87%像,但這部份我們並不會有過多的深入研究。
今天就講到這邊,謝謝大家!