title: How to create Abstract base class in JavaScript that can't be Instantiated
body: <p>I have a class </p>
  
  <pre><code>function Node() {
      //implementation
  }
  </code></pre>
  
  <p>and another class</p>
  
  <pre><code>function AttributionalNode() {
      this.prototype.setAttr = function (attr) {
          this.atText = attr;
      };
  }
  
  AttributionalNode.prototype = new Node();
  AttributionalNode.prototype.constructor = AttributionalNode;
  </code></pre>
  
  <p>How to make class Node() so it can't be instantiated?
  e.g when I try </p>
  
  <pre><code>var node = new Node();
  </code></pre>
  
  <p>So it throws an Exception?</p>