1. 要認識 node,首先我們得來了解了解JavaScript。
- JavaScript 是一門解釋型指令碼語言。
- JavaScript 是一種輕量級的程式語言。
- JavaScript 插入 HTML 頁面後,在瀏覽器中執行。
解釋型語言:
解釋型語言的程式在執行前不需要編譯,執行程式的時候才翻譯,專門的直譯器負責在每個語句執行的時候解釋程式程式碼(這樣解釋型語言每執行一次就要翻譯一次,效率比較低)
由此可知,瀏覽器是JavaScript的執行環境(瀏覽器核心),那麼js是不是隻能在瀏覽器中執行呢?
答案當然不是!node 也是 JavaScript 的執行環境。
===================================================
2. 現在知道了node 是什麼,接下來我們就來講講 node 環境和瀏覽器的區別:
- 全域性環境下this的指向。
在node中this指向global,而在瀏覽器中this指向window。
- DOM 操作。
瀏覽器中的 js 大多數情況下是在直接或間接(一些虛擬DOM的庫和框架)地操作DOM,因為瀏覽器中的程式碼主要是在表現層工作。
但是node是一門服務端技術,沒有一個前臺頁面,所以我們不會在node中操作DOM。
- I/O讀寫
node 提供了讀寫檔案的元件。而瀏覽器(確保相容性的)想在頁面中直接開啟一個本地檔案就麻煩了好多(可引用 js 庫、二進位制流,或者上傳上去有了網路地址在顯示)。
還有其他區別我之後會進行補充的。三人行,必有我師焉!我還只是個初出茅廬的小碼農,希望各位小哥哥小姐姐不吝賜教!有好的建議和寶貴經驗分享盡管向我砸過來。