Qu'est-ce que la convention de nommage javascript du nom de fichier? [fermé]

doit être nommé quelque chose avec des traits d'Union.js, en camelcase.js, ou quelque chose d'autre?

Je n'ai pas trouvé la réponse à cette question ici .

223
demandé sur Community 2011-09-01 20:24:17

5 réponses

L'une des conventions possibles de nommage est d'utiliser quelque chose de similaire au schéma de nommage que jQuery utilise. Il n'est pas universellement adopté, mais il est assez commun.

product-name.plugin-ver.sion.filetype.js

où la paire product-name + plugin peut aussi représenter un namespace et un module . Les version et filetype sont généralement optionnels.

filetype peut être quelque chose par rapport à la façon dont le contenu du fichier est. Souvent vus sont:

  • min pour les fichiers minifiés
  • custom personnalisé construit ou modifié des fichiers

exemples:

  • jquery-1.4.2.min.js
  • jquery.plugin-0.1.js
  • myapp.invoice.js
143
répondu Bryan Menard 2011-09-01 16:46:34

Je ne suis pas au courant d'aucune convention particulière pour les fichiers javascript car ils ne sont pas vraiment uniques sur le web par rapport aux fichiers css ou html ou tout autre type de fichier comme cela. Il y a des choses "sûres" que vous pouvez faire qui rendent moins probable que vous tomberez accidentellement sur un problème de plateforme croisée:

  1. utilisez tous les noms de fichiers minuscules. il y a certains systèmes d'exploitation qui ne sont pas sensibles à la casse pour les noms de fichiers et qui utilisent tous lowercase empêche par inadvertance l'utilisation de deux fichiers qui diffèrent seulement dans le cas où cela pourrait ne pas fonctionner sur certains systèmes d'exploitation.
  2. N'utilisez pas d'Espaces Dans le nom du fichier. bien que cela puisse techniquement fonctionner, il y a beaucoup de raisons pour lesquelles les espaces dans les noms de fichiers peuvent conduire à des problèmes.
  3. un trait d'Union est acceptable pour un séparateur de mots. si vous voulez utiliser une sorte de séparateur pour plusieurs mots au lieu d'un espace ou comme dans various-scripts.js , un trait d'Union est un séparateur sûr et utile et couramment utilisé.
  4. pensez à utiliser des numéros de version dans vos noms de fichiers. lorsque vous voulez mettre à jour vos scripts, planifiez les effets de la mise en cache par navigateur ou CDN. La façon la plus simple d'utiliser la mise en cache à long terme (pour la vitesse et l'efficacité), mais les mises à jour immédiates et sûres lorsque vous mettez à niveau un fichier JS est d'inclure un numéro de version dans le nom de fichier déployé ou le chemin (comme jQuery ne avec jquery-1.6.2.js) et ensuite vous changez le numéro de version chaque fois que vous mettez à jour/changez le fichier. Cela garantira qu'aucune page qui demande la nouvelle version ne sera jamais servie à l'ancienne version à partir d'un cache.
98
répondu jfriend00 2018-04-02 00:55:26

Il n'est pas officiel, universelle , la convention de nommage des fichiers JavaScript.

il y a plusieurs options:

  • scriptName.js
  • script-name.js
  • script_name.js

sont toutes des conventions de nommage valides, cependant I préfèrent la convention de nommage suggérée par jQuery (pour les plugins jQuery), bien qu'il fonctionne pour tout JS)

  • jquery.pluginname.js

la beauté de cette convention de nommage est qu'elle décrit explicitement la pollution de l'espace de nom global étant ajoutée.

  • foo.js ajoute window.foo
  • foo.bar.js ajoute window.foo.bar

parce que j'ai laissé tomber gestion des versions: il doit venir après le nom complet, de préférence en les séparant par un trait d'union, avec des périodes entre les versions majeures et mineures:

  • foo-1.2.1.js
  • foo-1.2.2.js
  • ...
  • foo-2.1.24.js
48
répondu zzzzBov 2012-03-04 18:58:41

la question dans le lien que vous avez donné parle de la dénomination des variables JavaScript, pas de la dénomination des fichiers, alors oubliez cela pour le contexte dans lequel vous posez votre question.

pour ce qui est de la dénomination du fichier, il s'agit purement d'une question de préférence et de goût. Je préfère nommer les fichiers avec des traits d'Union parce que je n'ai pas à atteindre la touche shift, comme je le fais quand je traite avec les noms de fichiers camelCase; et parce que je n'ai pas à me soucier des différences entre Windows et le fichier Linux noms (les noms de fichiers Windows sont insensibles à la casse, au moins par L'intermédiaire de XP).

Donc, la réponse, comme tant d'autres, est "ça dépend" ou "c'est à vous."

La seule règle que vous devez suivre est d'être cohérent dans la convention que vous choisissez.

12
répondu Pete Wilson 2011-09-01 16:33:47

je préfère généralement les traits d'union avec des minuscules, mais une chose n'est pas encore mentionnée, c'est que parfois il est agréable d'avoir le nom du fichier qui correspond exactement au nom d'un module ou d'une fonction instanciable contenue à l'intérieur.

par exemple, j'ai un module révélateur déclaré avec var knockoutUtilityModule = function() {...} dans son propre fichier nommé knockoutilitymodule.js, bien qu'objectivement je préfère knockout-utility-module.js.

de même, puisque j'utilise un mécanisme pour combiner des scripts, j'ai pris l'habitude de définir des fonctions instanciables (modèles de vue tempérés, etc.) chacune dans leur propre fichier, le style C#, pour la maintenabilité. Par exemple, ProductDescriptorViewModel vit sur son propre produit intérieur Descriptorviewmodel.js (j'utilise des majuscules pour instanciables des fonctions).

6
répondu Tom Hall 2012-07-12 23:37:04