What is required to use Angular 2 within IE9?
<p>I've been trying to create an Angular 2 application (using the get started guide) as a template but while it works really well in Chrome I'm struggling to get it working in IE9!</p>

<p>Basically the app is failing while loading/running boot/js with the following error reported to the developer console..</p>

<p>LOG: Error: Object doesn't support this action</p>

<p>Does anyone have any recommendations or suggestions - even better - a demo that actually works in IE9?</p>

<p>The start of my index.html looks like the following...</p>

<pre><code>&lt;head&gt;
&lt;title ng-bind="title"&gt;xxx&lt;/title&gt;
&lt;meta charset="utf-8" /&gt;
&lt;meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1" /&gt;
&lt;meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no" /&gt;
&lt;base href="/"&gt;

&lt;link rel="stylesheet" href="/css/bootstrap.min.css" /&gt;
&lt;link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css"&gt;

&lt;link rel="stylesheet" href="/css/style.css" /&gt;
&lt;link rel="stylesheet" href="/css/main.css" /&gt;

&lt;/body&gt;

&lt;script src="https://cdnjs.cloudflare.com/ajax/libs/es5-shim/4.4.1/es5-sham.js"&gt;&lt;/script&gt;
&lt;script src="https://cdnjs.cloudflare.com/ajax/libs/es6-shim/0.34.1/es6-sham.min.js"&gt;&lt;/script&gt;
&lt;script src="/app/shims_for_IE.js"&gt;&lt;/script&gt;
&lt;script src="https://rawgithub.com/systemjs/systemjs/0.19.6/dist/system.js"&gt;&lt;/script&gt;
&lt;script src="https://code.angularjs.org/tools/typescript.js"&gt;&lt;/script&gt;
&lt;script src="https://code.angularjs.org/2.0.0-beta.1/angular2-polyfills.js"&gt;&lt;/script&gt;
&lt;script src="https://code.angularjs.org/2.0.0-beta.1/Rx.js"&gt;&lt;/script&gt;
&lt;script src="https://code.angularjs.org/2.0.0-beta.1/angular2.dev.js"&gt;&lt;/script&gt;

&lt;script&gt;
    System.config({
    packages: {        
      app: {
        format: 'register',
        defaultExtension: 'js'
      }
    }
  });
  System.import('app/boot')
        .then(null, function(err){
            console.log(err);
        });
&lt;/script&gt;
</code></pre>

<p></p>

<p>With the Angular code following <a href="https://angular.io/guide/quickstart" rel="nofollow noreferrer">https://angular.io/guide/quickstart</a> to the letter!</p>

<p>Update 1:
With a bit more testing (mostly in newer IE browsers) I am experiancing the same issue but seeing more details..</p>

<pre><code>    TypeError: Object doesn't support property or method 'keys'
   at Anonymous function (http://localhost:5000/app/angular2.dev.js:783:5)
   at Anonymous function (http://localhost:5000/app/angular2.dev.js:781:3)
   at linkDynamicModule (https://cdnjs.cloudflare.com/ajax/libs/systemjs/0.19.16/system.src.js:3130:5)
   at getModule (https://cdnjs.cloudflare.com/ajax/libs/systemjs/0.19.16/system.src.js:3098:9)
   at Anonymous function (https://cdnjs.cloudflare.com/ajax/libs/systemjs/0.19.16/system.src.js:3134:9)
   at Anonymous function (http://localhost:5000/app/angular2.dev.js:10795:3)
   at linkDynamicModule (https://cdnjs.cloudflare.com/ajax/libs/systemjs/0.19.16/system.src.js:3130:5)
   at getModule (https://cdnjs.cloudflare.com/ajax/libs/systemjs/0.19.16/system.src.js:3098:9)
   at Anonymous function (https://cdnjs.cloudflare.com/ajax/libs/systemjs/0.19.16/system.src.js:3134:9)
   at Anonymous function (http://localhost:5000/app/angular2.dev.js:12011:3)
</code></pre>

<p>The index.html currently looks like..</p>

<pre><code>&lt;head&gt;
&lt;title ng-bind="title"&gt;xxx&lt;/title&gt;
&lt;meta charset="utf-8" /&gt;
&lt;meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1" /&gt;
&lt;meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no" /&gt;
&lt;base href="/"&gt;

&lt;link rel="stylesheet" href="/css/bootstrap.min.css" /&gt;
&lt;link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css"&gt;

&lt;link rel="stylesheet" href="/css/style.css" /&gt;
&lt;link rel="stylesheet" href="/css/main.css" /&gt;

&lt;script src="https://cdnjs.cloudflare.com/ajax/libs/es5-shim/4.4.1/es5-sham.js"&gt;&lt;/script&gt;
&lt;script src="https://cdnjs.cloudflare.com/ajax/libs/es6-shim/0.34.1/es6-sham.min.js"&gt;&lt;/script&gt;
&lt;script src="https://code.angularjs.org/2.0.0-beta.1/angular2-polyfills.js"&gt;&lt;/script&gt;

&lt;script src="https://code.angularjs.org/tools/typescript.js"&gt;&lt;/script&gt;

&lt;script src="/app/reflect.js"&gt;&lt;/script&gt;
&lt;script src="https://cdnjs.cloudflare.com/ajax/libs/systemjs/0.19.16/system.src.js"&gt;&lt;/script&gt;
&lt;script src="https://cdnjs.cloudflare.com/ajax/libs/systemjs/0.19.16/system-polyfills.src.js"&gt;&lt;/script&gt;
&lt;script src="https://code.angularjs.org/2.0.0-beta.1/Rx.js"&gt;&lt;/script&gt;
&lt;!--&lt;script src="https://code.angularjs.org/2.0.0-beta.1/angular2.dev.js"&gt;&lt;/script&gt;--&gt;
&lt;script src="/app/angular2.dev.js"&gt;&lt;/script&gt;



&lt;script src="/app/shims_for_IE.js"&gt;&lt;/script&gt;


&lt;script&gt;
    System.config({
    packages: {        
      app: {
        format: 'register',
        defaultExtension: 'js'
      }
    }
  });
  System.import('app/boot')
        .then(function(){
        }, function(err){
            console.log(err.stack);
        });
&lt;/script&gt;
</code></pre>

<p></p>