2

Si j'ai un module avec beaucoup de choses comme ceci:convention Révéler Module valeur de retour de modèle

My.Module = (function() { 
    function method1() {} 
    function method2() {} 
    ... 
    function method99() {} 

    return { 
     method1: method1, 
     method2: method2, 
     ... 
     method99: method99 
    }; 
})(); 

Comment pourrais-je éviter de répéter les noms de méthode? Ils apparaissent tous à trois endroits.

Si je devais utiliser une variable locale comme ceci:

My.Module = (function() { 
    var exp = {}; 

    exp.method1 = function() {}; 
    exp.method2 = function() {}; 
    ... 
    exp.method99 = function() {}; 

    return exp; 
})(); 

Que faut-il appeler la variable exp? exp, exports, exported, obj, object? Est-ce que ça importe? Quelle est la convention?

S'il y a un moyen qui est meilleur que les deux, qu'est-ce que c'est?

+2

le nom n'a pas d'importance, il est juste la référence à l'objet de retour. –

+0

@NinaScholz Je comprends que le nom n'a aucune incidence sur le code, mais y a-t-il une convention? Y at-il un nom largement accepté que je peux utiliser qui dirait immédiatement au lecteur "oh ouais, c'est le truc du public"? –

+1

appelle juste ce qu'il garde. –

Répondre

0

La première méthode est la manière la plus propre IMO.

En ce qui concerne le nom de var dans votre méthode secnd, nom, ce que vous aimez le nom ne sera pas exposé. Module devrait être bon.

Mais, si vous ne voulez pas vraiment répéter les noms de fonction, vous pouvez faire:

My.Module = (function() { 

    return { 
     method1: function method1() {}, 
     ... 
     method99: function method99() {} 
    }; 
})();