Assignment to read-only properties is not allowed in strict mode IE11
<p>I have been told by IE11 that <code>var self = this</code> is a read-only variable... Yet I am not assigning anything to it after its declaration point. The only variable is height that is changing. Even though, i would be able to change it when using <code>var</code></p>

<p>'use strict';</p>

<pre><code>    var onDocumentLoad = require('fe-client-utils/src/dom/onDocumentLoad');
    var onOrientationChange = require('fe-client-utils/src/dom/onOrientationChange');

    var faPageHeight = function () {

    };

    var FA = {
        init: function () {
            this.faAddons = document.querySelector('.fa-addons');
            this.faFooter = document.querySelector('.fa-footer');
            this.extraWideChild = document.querySelector('.extraWide &gt; div');
            this.extraWide = document.querySelector('.extraWide');
            this.faPages = document.querySelector('.fa-pages');
            this.pageContent = document.getElementById('page-content');
            this.faPageItems =  document.querySelectorAll('.fa-page');
            this.moveElements();
            this.faPageHeight();
        },
        faPageHeight: function () {
            var height = 0;
            var self = this;

            Object.keys(self.faPageItems).forEach(function (item, index) {
                height += self.faPageItems[item].offsetHeight;
            });

            height += 150;
            this.extraWideChild.style.height = height+'px';
        },
        moveElements: function () {
            this.faAddons.style = '';

            this.pageContent.appendChild(this.faAddons);
            this.pageContent.appendChild(this.faFooter);

            this.faFooter.style.display = 'block';
        }
    }

    onDocumentLoad(function () {
        FA.init();
    });

    onOrientationChange(function () {
        FA.faPageHeight();
    });
</code></pre>

<p><a href="https://i.stack.imgur.com/Q74Mf.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/Q74Mf.png" alt="enter image description here"></a></p>

<p>I get the following error <code>SCRIPT5045: Assignment to read-only properties is not allowed in strict mode</code> </p>

<p>According to <a href="https://msdn.microsoft.com/en-us/library/br230269(v=vs.94).aspx" rel="nofollow noreferrer">Microsoft</a> you should not be able to re-write a  read-only property. I don't believe I am. So why do I get the error?</p>

<blockquote>
  <ul>
  <li>Read-only property</li>
  <li>Writing to a read-only property</li>
  <li>SCRIPT5045: Assignment to read-only properties is not allowed in strict mode</li>
  <li>JavaScript</li>
  <li><code>var testObj = Object.defineProperties({}, {
      prop1: {
          value: 10,
          writable: false // by default
      },
      prop2: {
          get: function () {
          }
      }
  });
  testObj.prop1 = 20; 
  testObj.prop2 = 30;</code></li>
  </ul>
</blockquote>