babelがES6をES5に変換してES5ファイルを出力すると、アプリ出力ファイルに正確にES5コードが含まれているとブラウザでポリフィルファイルを含める必要がある?babelでES6〜ES5をコンパイルするときにブラウザにポリフィルファイルが必要な理由
0
A
答えて
1
BabelはES6(およびそれより新しい)コードをES5コードに変換します。たとえば、矢印機能(() => {}
)をES5関数(function() {}
)に書き換えます。しかし、ES6は新しい構文だけではありません。
バベルは唯一、あなたがそのような約束やString.padStartなどの新しいネイティブメソッド(左パッドのような新しいグローバルをサポートするために、バベル-ポリフィルを使用することができます構文(矢印関数のように)変換しているので)。それはコアjsと再生器を使用します。詳細はbabel-polyfillのドキュメントをご覧ください。
すべての新しい機能は、ポリフィルで実装する必要があります。これらのポリフィルは、プロジェクトにグローバルに含める必要があります。それ以外の場合、ES6関数のすべての使用は、ES5コードでのその関数の実装に置き換えられます。例えば、 Array#findIndex
を10回実行すると、変換されたコードにも実装が10回含まれます。そのため、ポリフィルはグローバルに追加する必要があり、蒸散工程によって追加されるだけではありません。
関連する問題
- 1. babelはビルド中にES5にコンパイルできないES6機能は何ですか?
- 2. ES6からES5をコンパイルするために必要なすべてのbabel-cli plusプリセットはありますか?
- 3. typescriptをes6にコンパイルする必要がありますか?es5にコンパイルする必要があります
- 4. Babel [karma-babel-preprocessor]カルマテスト用のES6-> ES5を変換しない
- 5. ブラウザでES6を使用する理由
- 6. GLFWプログラムのコンパイルとリンクにFreeGLUTが必要な理由
- 7. どのようにes5を必要とするes6をインポートするには
- 8. Webpack 2/Babelの間違ったソースマップ(ES6ではなくES5)
- 9. ES5バニラJSにES6ノードとJSXコードをコンパイルする方法
- 10. tscがES5をES5にコンパイル
- 11. babel es5 to es6インポート時に拡張子がCSSに変換されない
- 12. コンパイル済みのES6〜ES5ファイルをブラウザで使用する方法は?
- 13. Babelがes6 angular factoryをコンパイルできませんでした
- 14. babelを使ってes6をes5からプログラム的に変換する方法は?
- 15. ブラウザ(IE、Chrome)ドライバをダウンロードする必要がある理由
- 16. return文が必要な理由を理解できない
- 17. WebpackとBabelを1つのプロジェクトでES5とES6を使用するように設定する方法
- 18. ES6からES5をコンパイルするときに予期しないトークンが発生しました。
- 19. TextWatcherが必要な理由
- 20. RIAが必要な理由
- 21. "rec"が必要な理由
- 22. HerokuにResque 1.22.0が必要な理由
- 23. AMQPにmessageIdが必要な理由
- 24. カスタムディレクティブにBindToControllerが必要な理由
- 25. RVMにYAMLが必要な理由
- 26. rvmにログインシェルが必要な理由
- 27. JDBC-ODBCにドライバが必要な理由
- 28. Dockerにユニオンファイルシステムが必要な理由
- 29. Babelを使用してコンパイルする:.babelrcファイルがあるときにプリセットフラグが必要ですか?
- 30. Angular2のコンポーネントにサービスを注入するときにコンストラクタが必要な理由
ES5を適切にサポートしていないブラウザでは、ポリフィルだけが必要です。 – evolutionxbox
@evolutionxboxこれは正しくありません。あなたは文法を簡潔にしますが、ポリフィル機能は不要です。 – pawel