连字符分隔的情况的名称是什么?

这是PascalCase: SomeSymbol

这是camelCase: someSymbol

这是snake_case: some_symbol

所以我的问题是,是否有一个广泛接受的名称:some-symbol?它通常用于url。

212589 次浏览

它被称为kebab-case。看到# EYZ1。

对于这种case惯例,并没有真正的标准名称,对于它应该如何命名也存在分歧。

也就是说,截至2019年,有充分的理由表明kebab-case正在获胜:

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

spinal-case远远排在第二位,其他任何术语都没有吸引力。

此外,kebab-case已经进入了几个javascript代码库的词典,例如:

然而,人们仍然使用其他术语。Lisp使用这个约定已经有几十年了,如这个维基百科词条中所描述的,所以有些人将它描述为lisp-case。我见过的其他一些表单包括caterpillar-casedash-casehyphen-case,但这些表单都不是标准的。

所以你的问题的答案是:不,这种情况惯例没有一个被广泛接受的名称,类似于snake_casecamelCase,这是被广泛接受的。

它有时也被称为毛虫病

在这里添加正确的链接烤肉串的情况

这是所有小写字母与-分隔词。

我只想说它是用连字符连接

没有标准化的名称。

jquerylodash这样的库将其称为kebab-caseVuejs javascript框架也是如此。然而,我不确定声明它在javascript世界中被称为kebab-case是否安全。

我一直叫它,也听人叫它“仪表盘”。

这是最近的一种混乱。在angular JS和Pluralsight课程以及有关angular的书籍中,所有的文档都将烤肉箱称为蛇箱,并没有区分这两者。

可惜caterpillar-case没有坚持下来,因为snake_case和caterpillar-case很容易记住,而且实际上看起来就像它们所代表的那样(如果你有良好的想象力)。

由于字符(-)被称为“连字符”或“破折号”,因此将其命名为“dash-case”或“hyphen-case”(不太常用)似乎更自然。

正如在维基百科中提到的,“kebab-case”也被使用。显然(参见回答),这是因为角色看起来像串肉扦……不过它需要一些想象力

最近,“dash-case”被

值得一提的是从废除:

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

仪表盘或烤串盒

这是最著名的案例,它有很多名字

  • kebab-case:这是官方软件最常用的名称
  • # EYZ0
  • # EYZ0
  • hyphen-casehyphenated-case
  • # EYZ0
  • # EYZ0
  • # EYZ0
  • # EYZ0
  • # EYZ0

我的ECMAScript提案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();
}

这种大小写也可以被称为“慢句”,把一个短语变成“慢句”的过程。

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

我一直叫它kebab-case

有趣的是,当所有字母都大写时,我听到有人称之为SCREAM-KEBAB

烤肉个案警告

我总是使用喜欢# EYZ0,因为当你需要空格时,它似乎是最易读的。然而,有些程序将破折号解释为减号,这可能会导致问题,因为您认为的名称变成了减号操作。

first-second  // first minus second?
ten-2 // ten minus two?

此外,一些框架还会解析kebab大小写属性中的破折号。例如,GitHub Pages使用变身怪医, Jekyll解析它在md文件中发现的任何破折号。例如,在编译站点时,将GitHub页面上名为2020-1-2-homepage.md的文件放入结构为\2020\1\2\homepage.html的文件夹中。

Snake_case vs kebab-case

kebab-case更安全的替代方案是snake_caseSCREAMING_SNAKE_CASE,因为与负号相比,下划线会减少混淆。