文本
大小写与命名转换
八种转换覆盖写作与代码两种场景:标题式用于小标题,驼峰与下划线用于变量命名,短横线用于 URL。
怎么用
- 把文本粘贴到输入框。
- 点对应的转换按钮,文本会在原地替换,可以连续转换。
- 点「复制」取走结果。
几种命名法各自该用在哪
camelCase 用于 JavaScript 和 Java 的变量与函数;PascalCase 用于类型、类和 React 组件;snake_case 用于 Python 和 SQL 的列名;kebab-case 用于 CSS 类名、URL 和 HTML 属性。这不是审美问题,而是让人在不读具体单词的情况下,光看形状就能判断这个名字指的是什么东西。
缩写词带来的麻烦
把「user ID」转成驼峰,按不同算法会得到 userID、userId 或 user_id,三种在真实代码里都能见到。多数规范倾向前者之外的 userId,因为连续大写比「大写加小写」更难扫读。关键不是选哪个,而是只选一次——APIURL 到底变成 apiUrl 还是 apiURL,定下来之后全项目统一。不一致比任何一种选择都更糟。
清理一列不一致的字段名
典型场景是这么一张表格:同一个字段在两年里出现过四种写法——First Name、first_name、FIRSTNAME,还有一个孤零零的 Firstname。先把整列统一成一种大小写,再处理词边界:转换只改大小写形状,不改空格,而真正的差异往往藏在空格里。
要留意内部带大写的名字(McDonald、iPhone、eBay)。任何批量转换都会把它们压平,所以要么把这些行排除,要么转换后补一次修正。商品编码同理——那里的大写是标识的一部分,不是排版风格。
常见问题
标题式和句式有什么区别?
标题式把每个单词首字母大写,适合小标题;句式只大写第一个单词,是现在界面文案的主流写法。
为什么下划线命名会去掉标点?
因为它面向变量名和 URL,除字母数字外的所有字符都会被替换成一个分隔符。
中文文本能转换吗?
中文没有大小写,这些按钮只影响其中的英文字母和数字。
转换会处理带重音的字母吗?
会保留:Écoute 变成 écoute,而不是 ecoute。去掉重音是另一个操作,而且在法语、土耳其语和越南语里会改变词义。
为什么我的标识符被切错了?
因为转换器只能从大写字母和下划线里猜词边界。APIKey 既可能是 api_key 也可能是 apikey;结果不对就显式指定分隔符。