What are the fundamental differences between utilizing CoffeeScript extends vs. Backbone.js extend?
For example, how is
cla
The two are intended to be equivalent. To quote the Backbone.js changelog:
0.3.0: Backbone classes may now be seamlessly inherited by CoffeeScript classes.
Both CoffeeScript's Child extends Parent and Backbone's Child = Parent.extend() do three important things:
Child.prototype to new ctor, where ctor is a function whose prototype is Parent.prototype. That establishes prototypal inheritance.Parent's static properties onto Child.Child.__super__ = Parent. This is mainly to support CoffeeScript's Ruby-like super keyword in Child's methods.