<div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_quote"><div><div class="h5"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div style="word-wrap:break-word"><div><blockquote type="cite"><div><div><p><font face="'courier new', monospace">class Snake extends Animal {</font></p><p><font face="'courier new', monospace">    constructor(name){</font></p>

<p><font face="'courier new', monospace">        super(name);</font></p><p><font face="'courier new', monospace">    }</font></p></div></div></blockquote></div></div></blockquote></div></div></div></blockquote>
<div>Another option here would be:</div><div><br></div><div>class Snake extends Animal {</div><div>    // Using "new" ; )</div><div>    new(name) : super(name) {}</div><div>};</div><div><br></div><div>Note the call to the super constructor before the body of the constructor.  This is similar to C#.  The reason that we might want to go that way is because if we wanted to have instance initializers in the class body (a very common thing in class-based languages), then we'd want to maintain this order:</div>
<div><br></div><div>1.  Call superclass constructor</div><div>2.  Execute instance property initializers in text order</div><div>3.  Execute constructor body</div><div><br></div><div>kevin</div></div><br>