web-dev-qa-db-fra.com

Quel est le nom de la casse séparée par un trait d'union?

C'est PascalCase: SomeSymbol

C'est camelCase: someSymbol

C'est snake_case: some_symbol

Ma question est donc de savoir s’il existe un nom largement accepté pour ceci: some-symbol? Il est couramment utilisé dans les URL.

457
lms

Il n'y a pas vraiment de nom standard pour cette convention de cas, et il y a désaccord sur son nom.

Cela étant dit, à compter de 2019, il est fort à parier que kebab-case gagne:

https://trends.google.com/trends/explore?date=all&q=kebab-case,spinal-case,LISP-case,dash-case,caterpillar-case

spinal-case est une seconde lointaine, et aucun autre terme n'a de traction.

De plus, kebab-case a entré le lexique des bibliothèques de code, par exemple. https://lodash.com/docs/#kebabCase et https://www.npmjs.com/package/kebab-case .

Cependant, il existe encore d'autres termes que les gens utilisent.

Le LISP a utilisé cette convention pendant des décennies comme décrit dans cette entrée de Wikipedia . Pour cette raison, il a été décrit comme LISP-case dans un question sur Programmers SE similaire à celui-ci. Cela semble être une frappe originale.

Parmi les autres formes que j'ai vues, citons caterpillar-case , dash-case , et tiret , mais aucun d’eux n’est standard.

La réponse à votre question est donc la suivante: non, il n’existe pas un seul nom largement accepté pour cette convention de cas, analogue à snake_case ou camelCase , qui sont largement acceptés.

391
Ben Lee

C'est ce qu'on appelle kebab-case . Voir documentation lodash .

436
jwfearn

On l'appelle aussi parfois chenille

36
tim_yates

Ajout du lien correct ici Kebab Case

qui est tout en minuscule avec - séparant les mots.

13
user666

Je l'ai toujours appelé et entendu l'avoir appelé "dashcase".

8
Mike Campbell

Comme le caractère (-) est appelé "trait d'union" ou "tiret", il semble plus naturel de nommer ce " dash-case ", ou " trait d'union " (moins fréquemment utilisé).

Comme mentionné dans Wikipedia , " kebab-case " est également utilisé. Apparemment (voir réponse ) cela est dû au fait que le personnage ressemblerait à une brochette ... Il faut cependant un peu d'imagination.
Utilisé dans lodash lib par exemple.

Récemment, " dash-case " a été utilisé par

7
Guillaume Husta

Je dirais simplement que c'était trait d'union .

5
Jem Marsh

Il n'y a pas de nom normalisé.

Des bibliothèques telles que jquery et lodash le désignent par le nom kebab-case. Il en est de même pour Vuejs framework javascript. Cependant, je ne suis pas sûr qu'il soit sûr de déclarer qu'il est référencé comme kebab-case dans le monde javascript.

5
Gaurang Patel

La liste complète après quelques recherches:

  • Affaire Kebab
  • Affaire Caterpillar
  • Cas Dash
  • Cas d'un trait d'union
  • Cas LISP
  • Cas de la colonne vertébrale
  • Cas de CSS
3
Shadi Namrouti
2
Ramanraj Saxena
2
albfan

Voici une discombobulation plus récente. Documentation partout dans angular Les cours JS et Pluralsight et les livres sur angular, font tous référence à kebab-case en tant que snake-case, sans distinction entre les deux.

Sa casse de chenille, trop mauvaise, ne collait pas, car snake_case et caterpillar-case sont facilement mémorisables et ressemblent à ce qu’ils représentent (si vous avez une bonne imagination).

2
Wray Smallwood

Ma proposition ECMAScript pour String.prototype.toKebabCase.

String.prototype.toKebabCase = function () {
  return this.valueOf().replace(/-/g, ' ').split('')
    .reduce((str, char) => char.toUpperCase() === char ?
      `${str} ${char}` :
      `${str}${char}`, ''
    ).replace(/ * /g, ' ').trim().replace(/ /g, '-').toLowerCase();
}
1
Christoph Bühler