今日のキーワードはPolyfill。
異なるブラウザ、また同一種類のブラウザでもバージョンが違うと、
使用できるJavascriptのバージョンも異なります。
すると、開発者が実装したい機能が、あるバージョンのJavaScriptの機能にあるが、他のバージョンにあるかどうかを調べなければならならず、
大変調査コストがかかります。
PolyfillはこのようなJavaScriptのバージョンの違いによる機能差を埋めてくれるものです。
Polyfillに使用したい関数を実装すれば、どのブラウザでも機能させることができます。
ただし、新しいバージョンのJavaScriptに新しく追加された関数をPolyfillに実装し、
微妙に正式な仕様と挙動が異なる場合、これが後々バグの温床となる事があるので、注意が必要です。