I have been reading and following several Backbone.js tutorials and when it comes to defaults for the model people seem to do it one of two ways.

First Way - Defaults are an object
----------------------------------

The first way is that defaults are declared as an object, for example;

```
my_model = Backbone.Model.extend({
    defaults: {
        title: 'Default Title'
    }
});

```

This makes most sense to me, I immediately know that the defaults is an object and it works fine.

Second Way - Defaults are a function
------------------------------------

The second way I have seen this is is that defaults are declared as a function, for example;

```
my_model = Backbone.Model.extend({
    defaults: function() {
        return {
            title: 'Default Title'
        }
    }
});

```

This function obviously ends up returning an object, and to me makes little sense (unless you wanted to pass something into the function eventually.

My Question
-----------

My question is, is there a benefit to using one over the other assuming that you will not be passing any parameters using the function way. My feeling is that there may be a minuscule overhead from having the anonymous function be called but would love a more informed opinion.