@tinyfe/naming-transform
Version:
Converting to different kind of naming style
208 lines (139 loc) • 3.87 kB
Markdown
> 转换为不同类型的命名风格
```js
import {
style,
baseCase,
camel,
capital,
constant,
dot,
header,
hyphen,
kebab,
param,
path,
pascal,
snake,
sentence,
underscore,
lowerCaseFirst,
upperCaseFirst,
} from '@tinyfe/naming-transform';
style('userName'); // camel
style('USER_NAME'); // constant
style('user-name'); // kebab
style('UserName'); // pascal
style('user_name'); // snake
style('user_Name'); // snake
style('Username'); // ''
style('My user name is Rain120'); // ''
baseCase('my user name is rain120'); // my user name is rain120
camel('username'); // username
camel('user name'); // userName
capital('username'); // Username
capital('user name'); // User Name
constant('user name'); // USER_NAME
dot('user name'); // user.name
header('user name'); // User-Name
header('userName'); // User-Name
hyphen('user name'); // user-name
hyphen('USER NAME'); // user-name
kebab('user name'); // user-name
kebab('USER NAME'); // user-name
param('user name'); // user-name
param('USER NAME'); // user-name
path('user name'); // user/name
pascal('user Name'); // UserName
pascal('user name'); // UserName
snake('user name'); // user_name
sentence('my User Name is Rain120'); // My user name is rain120
underscore('user name'); // user_name
lowerCaseFirst('UserName'); // userName
upperCaseFirst('username'); // Username
```
`camelCased` 驼峰式命名
> 单词用首字母大写分割, 首单词首字母小写
```js
camel('user name'); // userName
```
`PascalCase` 帕斯卡/大驼峰命名
> 单词用首字母大写分割, 首单词首字母大写
```js
pascal('user name'); // UserName
```
`kebab-cased` 短横线命名(又称烤串命名) / `hyphen-cased` 连字号格式命名
> 单词用 - (中划线) 分割
```js
hyphen('user name'); // user-name
kebab('user name'); // user-name
```
`snake_cased` 蛇型命名
> 单词间使用 \_ (下划线) 分割, 全小写
> 如果所有单词都小写, 称之为 `lower snake case (小蛇式)`, 例如`get_user_name`。
> 如果所有单词都大写, 称之为 `upper snake case (大蛇式)`, 例如`GET_USER_NAME`。
```js
snake('user name'); // user_name
```
`UnderScore_cased` 下划线命名
> 单词间使用 \_ (下划线) 分割, 不区分大小写
```js
underscore('user name'); // user_name
```
`CONSTANT_CASED` 常量命名
> 单词全大写, 用 \_ (下划线) 分割
```js
constant('user name'); // USER_NAME
```
`capital.cased`
> 转换成首字母大写的字符串
```js
capital('user name'); // User Name
```
`dot.cased`
> 转换成用 `.` 分隔的字母小写的字符串
```js
dot('user name'); // user.name
```
`header.cased`
> 转换为用 `-` 分隔的首字母大写的字符串
```js
header('user name'); // User.Name
```
`param.cased`
> 转换成用 `-` 分隔的字母小写的字符串
```js
param('user name'); // user-name
```
`path.cased`
> 转换成用 `/` 分隔的字母小写的字符串
```js
path('user name'); // user/name
```
`sentence.cased`
> 转换成用 **空格** 分隔的首大写,其他字母都小写的字符串
```js
sentence('my User Name is Rain120'); // My user name is rain120
```
`base.cased`
> 转换成用 **空格** 分隔的小写字母
```js
baseCase('my User Name is Rain120'); // my user name is rain120
```
`lowerCaseFirst`
> 首字母小写
```js
lowerCaseFirst('RAIN120'); // rAIN120
```
`upperCaseFirst`
> 首字母大写
```js
upperCaseFirst('rain120'); // Rain120
```
[](https://betterprogramming.pub/string-case-styles-camel-pascal-snake-and-kebab-case-981407998841)
[](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles)
[](https://github.com/blakeembrey/change-case)