操作指南 · 开发者

camelCase、snake_case、kebab-case:各用在哪,怎么互转

Case Converter4 分钟阅读

简短回答

camelCase 是 JavaScript/JSON 的惯例,snake_case 属于 Python 和 SQL,kebab-case 用在 CSS 类名、文件名和 URL。要互转,把标识符粘进 Case Converter,点目标风格即可——它按大小写和缩写词边界重新分词,全程本地。

  1. 1

    点击 Case Converter 图标打开弹窗。

  2. 2

    粘入一个标识符或短语——空格、大小写边界和缩写词都会作为切分点。

  3. 3

    点目标风格:camelCase、PascalCase、snake_case、kebab-case 或 CONSTANT。

  4. 4

    点“复制结果”,或用撤销换一种风格再试。

  5. 5

    一个标识符一轮——整个输入会变成一个名字,所以一次只转一个。

标识符里不能有空格,于是每个生态都发明了自己标记词边界的方式——而数据一跨生态流动,你就在给东西改名。一份用 camelCase 写就的 JSON 载荷,遇上一个要 snake_case 的 Python 服务;一个组件名要变成文件名。下面说清每种惯例真正的地盘,以及如何不靠手改完成互转。

Case Converter 弹窗的开发者命名一排按钮:camelCase、PascalCase、snake_case、kebab-case 与 CONSTANT
开发者命名这排按钮,一键转换任意标识符或短语,完全在你的设备上。

每种惯例的地盘

camelCase 是 JavaScript 和 Java 里变量与函数的默认风格,也是 JSON 键名的主流。snake_case 是 Python、Ruby、Rust 里变量与函数的用法,也是 SQL 列名最保险的写法。kebab-case 活在标识符与 Web 交界的地方:CSS 类名、HTML 属性、文件名和 URL slug——它进不了大多数编程语言,因为连字符会被解析成减号。还有两位同门补齐整套:PascalCase 用于类、类型和 React 组件,CONSTANT_CASE 用于常量和环境变量。不管全球惯例怎么说,同一代码库内部的一致性压倒一切。

靠重新分词转换,而不是查找替换

手动改名意味着在脑子里拆词,普通的查找替换则根本无从下手——看不见的词边界没有可搜索的字符。Case Converter 机械地完成这件事:粘入标识符——或者带空格的普通短语——点目标风格。分词器在任何非字母数字的字符段上切分,同时也在大小写边界上切分,还认得缩写词:XMLHttpRequest 变成 xml_http_request,而不是 x_m_l_http_request。它支持 Unicode,带重音的单词也能安然拆分。

一次一个标识符

一条诚实的边界:开发者命名按钮会把整个输入重新分词成单一标识符。要是粘进多行名字的列表,它们会被拼成一个超长标识符——所以一次只转一个标识符或短语,用撤销按钮在几次尝试之间回退。没有大小写之分的字符,比如中文或日文,会原样通过。

本地、免费、不碰页面

这个扩展是纯弹窗:唯一权限是本地存储,从不读取你的标签页,粘进去的东西也不会上传。内部 API 名称和未发布的 schema 字段都留在你的机器上。同一个弹窗里还备着编辑型大小写、文本清理和 URL slug 生成器,随取随用。

跨命名惯例改名

camelCase、PascalCase、snake_case、kebab-case 与 CONSTANT_CASE——认得缩写词,完全本地。

了解 Case Converter →