Qual é o nome do caso separado por hífen?

Este é o PascalCase.: SomeSymbol

Este é o camelCase.: someSymbol

Este é o snake_case.: some_symbol

então a minha pergunta é se há um nome amplamente aceite para isto: some-symbol? É comumente usado em url's.

Author: Fez Vrasta, 2012-06-30

15 answers

Não há realmente um nome padrão para este caso Convenção, e há desacordo sobre o que deve ser chamado.

Dito isto, a partir de 2019, há um caso forte a ser feito que kebab-case {[5] } está a ganhar:

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

o caso espinal é um segundo distante, e nenhum outro termo tem qualquer tracção.

Adicionalmente, o kebab-case entrou no léxico de várias bibliotecas de código javascript, por exemplo:

No entanto, ainda existem outros termos que as pessoas usam. Lisp tem usado esta convenção há décadas como descrito em Este item do Wikipédia , por isso alguns as pessoas descreveram-no como [[4]}lisp-case . Outras formas que já vi incluem a caixa de lagarta., dash-case , and hífen-case , but none of these is standard.

Então a resposta à sua pergunta é: Não, Não há um único nome amplamente aceito para esta convenção de caso análogo a snake_case ou camelCase, que são amplamente aceites.

 467
Author: Ben Lee, 2019-11-21 05:26:06

É referido como kebab-case . Ver lodash docs .

 480
Author: jwfearn, 2015-02-25 11:27:00

Também é conhecido por caterpillar-case

 37
Author: tim_yates, 2014-02-22 16:23:21

Adicionando aqui a ligação correcta Caso Kebab

Que é tudo minúsculas com palavras separadoras.

 16
Author: user666, 2016-09-05 13:39:35

Como o personagem ( - ) é referido como "hífen" ou "traço", parece mais natural nomear este "dash-case", ou "hífen-case" (usado menos frequentemente).

Como mencionado em Wikipédia, "kebab-case " também é utilizado. Aparentemente (ver resposta ) isto é porque o personagem seria parecido com umespeto ... Mas precisa de imaginação.
Utilizado em lodash lib , por exemplo.

Recentemente, "caixa de instrumentos " foi utilizado por

 12
Author: Guillaume Husta, 2020-04-03 21:03:27
Sempre o chamei, e ouvi-o chamar-se "dashcase".'
 11
Author: Mike Campbell, 2017-01-27 09:35:59
Este é o caso mais famoso e tem muitos nomes.
  • É o nome mais adoptado pelo software oficial.
  • caterpillar-case
  • dash-case
  • hyphen-case ou hyphenated-case
  • lisp-case
  • spinal-case
  • css-case
  • slug-case
  • friendly-url-case
 11
Author: Shadi Namrouti, 2020-10-01 17:10:59
Não existe um nome padronizado.

Bibliotecas comojquery elodash referem-no como {[[0]}. Assim como VueJS JavaScript framework. No entanto, Não tenho certeza se é seguro declarar que é referido como {[[0]} no mundo javascript.

 6
Author: Gaurang Patel, 2017-07-26 02:08:24

Eu diria simplesmente que era hifenado.

 5
Author: Jem Marsh, 2016-11-29 10:24:11

Vale a pena mencionar a partir da abolição:

Https://github.com/tpope/vim-abolish/blob/master/doc/abolish.txt#L152

Caixinha do lixo ou caixa de kebab

 3
Author: albfan, 2017-09-30 02:00:32
 3
Author: Ramanraj Saxena, 2019-03-05 14:50:57
Aqui está uma desconcertação mais recente. Documentação em todos os lugares em js angular e Pluralsight courses e livros sobre angular, todos se referem a kebab-case como snake-case, não diferenciando entre os dois.

É uma pena que a caterpillar-case não colou porque a snake_case e a caterpillar-case são facilmente lembradas e parecem-se com o que representam (se tiver uma boa imaginação).

 2
Author: Wray Smallwood, 2017-04-19 17:48:43

A minha proposta ECMAScript para 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
Author: Christoph Bühler, 2019-03-13 16:53:23

Sempre o soube como kebab-case.

Numa nota engraçada, ouvi as pessoas chamarem-lhe " a " quando todas as letras estão em maiúsculas.

Alerta De Caso Kebab

Eu sempre gostei kebab-case como parece o mais legível quando você precisa de espaço em branco. No entanto, alguns programas interpretam o traço como um sinal de menos, e pode causar problemas como o que você acha que é um nome se transforma em uma operação de subtração.
first-second  // first minus second?
ten-2 // ten minus two?

Além disso, alguns enquadramentos analisam os traços em propriedade do kebab. Por exemplo, as páginas do GitHub usam Jekyll , e o Jekyll analisa todos os traços que encontra num ficheiro md. Por exemplo, um arquivo chamado 2020-1-2-homepage.md em páginas GitHub é colocado em uma pasta estruturada como \2020\1\2\homepage.html quando o site é compilado.

Snake_case vs Kebab-case

Uma alternativa mais segura para kebab-case é snake_case, ou SCREAMING_SNAKE_CASE, como ressalta causa menos confusão quando comparado com um sinal de subtração.

 1
Author: Cameron McKenzie, 2020-12-17 14:52:19
Este invólucro também pode ser chamado de "lesma", e o processo de transformar uma frase em"lesma".

Https://hexdocs.pm/slugify/Slug.html

 0
Author: MgSam, 2020-07-02 15:44:18