La déclaration d'une fonction membre dans le JS

J'ai essayé les deux façons de déclarer un membre de la fonction en JS:

function init() {
    var name = "Mozilla";
    function displayName() {
        alert(name);
    }
}
a = new init();
a.displayName()

Et

function init() {
    var name = "Mozilla";
    displayName = function() {
        alert(name);
    }
}
a = new init();
a.displayName()

La première méthode m'a dit que displayName() est undefined. La façon dont je le vois d'une variable de type Function avec nae displayName est créé, et donc il faut travailler.
Un soin d'expliquer pourquoi il n'a pas de travail?

Grâce

OriginalL'auteur Yotam | 2012-12-04