title: What is ((window) => { ...})(window); meaning
body: <p>I file in a project contains the following code:</p>
  
  <pre><code> //begin of the file
   ((window) =&gt; {
      'use strict';
  class View extends GSM.EventEmitter {
  
      constructor() {
          super();
  //some function here
  
  }
  })(window);
  //end of the file
  </code></pre>
  
  <ul>
  <li>What does this structure mean?</li>
  <li>What is this line for <code>((window) =&gt; {}(window);</code> ?</li>
  <li>What does <code>constructor()</code>mean ?</li>
  </ul>
  
  <p>My English a little poor,hope I make the question clear.:-)</p>