Require usage techniques

I've seen some node.js boilerplates that autoload model files using "require()" in several different ways. I'm used to using "var variable_name = require('app/models/model.js') and Model = require('app/models/model.js') but I'm wondering how to use a model when is required like this:

require('app/models/model.js')

Let's suppose model.js has attribute "name" and method ".save()".

How this model can be used?

If you don't assign the object returned from require, you can't get access to it later. Here are some examples with notes:

This will run the top-level code, but not keep a reference to the module object

require('app/models/model.js')

This will run the top-level code and get you one instance (note I'm assuming model.js exports a constructor function as would be common as opposed to the name and save properties you describe directly, which I think is unlikely what's really there).

var myModel = new require('app/models/model.js')

This will store the model constructor so you can make as many instances as you need.

var Model = require('app/models/model.js')