Q&A
__Babel__でトランスコンパイルしているのですが、__IE11__でサポートしていないコンストラクタ関数__Headers()__などが機能しません。
これはあくまで「記法」のみが変換・最適化されるからでしょうか?
気になる質問をクリップする
クリップした質問は、後からいつでもマイページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
下記のような質問は推奨されていません。
- 質問になっていない投稿
- スパムや攻撃的な表現を用いた投稿
適切な質問に修正を依頼しましょう。
回答1件
3
ベストアンサー
IE11のようなレガシーブラウザには実装されていないコンストラクタや関数を使えるようするには@babel/polyfillを使う必要があります。polyfillを正しく組み込めば、ES2015以降に追加されたPromise等もIE11で使用できるようになります。ただし、ES2018全ての機能をサポートしているわけでは無い事に注意が必要です。
なお、@babel/polyfill以外にもpolyfillは存在し、そちらを使うという手段もあります。全部入りpolyfillは小さくないサイズですので、必要な機能だけを絞って使う、特定機能だけのpolyfillを使うというのもできます。細かいことはpolyfillというキーワードで検索してみてください。
【追記】
@babel/polyfillについてもう一つ注意しておかなくてはなりません。それは、このpolyfillはECMASCriptのpolyfillであって、JavaScriptのpolyfillではないと言うことです。JavaScriptの言語仕様はECMAScriptですが、そこにブラウザやネットワーク等で使う各APIを追加することでJavaScriptになっています。このブラウザやネットワーク等に関わるようなAPI部分はECMAScriptの仕様外であるため、babelでは一切考慮されません。
HeadersやfetchなどはJavaScript側に含まれるAPIです。ですので、@babel/polyfillでは対応できません。では、全く対応できないかというとそうではありません。それらの新しいAPIについては個別にpolyfillが存在する場合があるからです。
github/fetch: A window.fetch JavaScript polyfill.
上はFetch Standardのpolyfillです。fetchおよびfetch周りのAPIを網羅しています。他にも必要になれば、個別にpolyfillを探しだし、追加することで、どうにか動くようにできる場合があります。
ただし、注意してください。polyfillが実現出来るのは、古い実装でもその動作をエミュレートできる場合だけです。ブラウザそのものにAPIがないと不可能というものや、一部制限がでるといったこもあります。IE11については、どこかで妥協することも必要になるかも知れません。
投稿2019/04/18 22:11
編集2019/04/19 10:27総合スコア21693
関連した質問
Q&A
解決済
Visual Studioで単体で動作するexeファイルの作成方法
回答2
クリップ2
更新
2022/01/12
Q&A
受付中
作成した電子書籍にページごとに音声再生
回答1
クリップ1
更新
2023/03/15
意見交換
受付中
flaskをホストするのに最も適しているレンタルサーバーを知りたい。
回答1
クリップ1
更新
2023/03/23
Q&A
解決済
自作クラスのコンストラクタにLNK2019エラーが発生する
回答2
クリップ0
更新
2023/02/14
意見交換
クローズ
When will GOOGLE COLAB support OpenCV4?
回答5
クリップ0
更新
2023/03/14
Q&A
受付中
Windows Serverのアップグレード時に気を付けること
回答1
クリップ0
更新
2023/03/11
意見交換
クローズ
Cythonで単独またはメイン言語としてアプリケーション開発の可能性❓
回答2
クリップ0
更新
2023/03/09
同じタグがついた質問を見る
Babelは、JavaScriptの次世代仕様であるECMAScriptのコンパイラ。次世代の標準機能を用いて記述されたコードを、それらの機能に対応していないブラウザでも動作するコードに変換することができます。
Internet Explorer(IE;MSIE)はマイクロソフトが開発したウェブブラウザです。Microsoft Windowsに組み込まれています。
下記のような回答は推奨されていません。
このような回答には修正を依頼しましょう。
退会済みユーザー
2019/04/19 02:20
2019/04/19 10:25