It is the same.
When you extend a class with Backbone.View.extend({}) , as you can see, you are not adding any additional property or method to your class. You pass it an empty hash {} as an argument. So, Backbone.View and Backbone.View.extend({}) are pretty much the same.
About the presence of the new keyword before this, it just starts a new class. If you do not use the new keyword, you are just talking about classes, while with the new keyword you are talking about an object of this class itself.
Parentesis is not an obligation. This is only necessary if you want to pass arguments to your constructor, so new Backbone.View() and new Backbone.View; match, like new Backbone.View() and new Backbone.View.extend({}) , for the reasons I wrote earlier.
About this fiddle (http://jsfiddle.net/C2Z34/):
myView1 is a class that extends the viewmyView2 (with a parent like in my fiddle) is an object of a class extended by Backbone.ViewmyView3 is an object of the Backbone.View class. It is not expanded.myView4 the same as myView3
source share