2017-02-23 45 views

回答

3

Babel是一個轉錄庫。它需要ES6/7/Next代碼並將其編譯爲以前的標準。它允許你使用ES6,一些ES7和插件,這些東西還沒有正式成爲語言的一部分。 Babel通常用於轉換ES6 +代碼,以便它可以在瀏覽器中運行,其中許多仍然廣泛使用的僅支持ES5。

節點是服務器端JavaScript運行時,雖然您可以使用節點來運行babel'd代碼(它只是javascript!),但您並不需要作爲節點自己理解ES6。

「我該用哪個?」的基本答案在瀏覽器中是Babel,服務器上是Node。

1
  1. 巴貝爾可以用來製造ES6代碼工作在不 支持ES6儘可能節點做瀏覽器,
  2. 不是每個項目支持最新版本的節點,巴貝爾可以編譯代碼,這樣它在較舊版本的節點
1
  1. 是的NodeJS一個JavaScript的運行環境,在Chrome的V8引擎構建的。它本質上理解現代JavaScript。
  2. babel是一個polyfill庫,允許較舊的瀏覽器(或甚至較舊版本的nodejs)通過將較新的語法「翻譯」爲其較早的等效語言來運行現代JavaScript語法(ES6)。
+0

你有沒有關於它的文檔(比較)?人們何時應該使用babel或節點? –

+1

這裏沒有真正的比較。其中之一是運行時環境,另一個是圖書館。沒有人必須選擇 - 或者,他們都可以共同生活。當人們想用javascript構建應用程序時,人們使用節點。當他們(或他們的用戶)的javascript編譯器/環境不是最新的時候,人們使用babel。 – AVAVT

相關問題