Skip to content

capitalize

将字符串的第一个字符转换为大写,其余字符转换为小写。

基础用法

typescript
import { capitalize } from 'radash'

const result = capitalize('hello world')
// 'Hello world'

const result2 = capitalize('JAVASCRIPT')
// 'Javascript'

语法

typescript
function capitalize(str: string): string

参数

  • str (string): 要转换的字符串

返回值

返回一个新字符串,第一个字符大写,其余字符小写。

示例

基本用法

typescript
import { capitalize } from 'radash'

console.log(capitalize('hello'))        // 'Hello'
console.log(capitalize('world'))        // 'World'
console.log(capitalize('javascript'))   // 'Javascript'
console.log(capitalize('react'))        // 'React'

处理全大写字符串

typescript
import { capitalize } from 'radash'

console.log(capitalize('HELLO'))        // 'Hello'
console.log(capitalize('WORLD'))        // 'World'
console.log(capitalize('JAVASCRIPT'))   // 'Javascript'
console.log(capitalize('REACT'))        // 'React'

处理混合大小写

typescript
import { capitalize } from 'radash'

console.log(capitalize('hElLo'))        // 'Hello'
console.log(capitalize('wOrLd'))        // 'World'
console.log(capitalize('jAvAsCrIpT'))   // 'Javascript'
console.log(capitalize('rEaCt'))        // 'React'

处理特殊字符

typescript
import { capitalize } from 'radash'

console.log(capitalize('hello world'))  // 'Hello world'
console.log(capitalize('hello-world'))  // 'Hello-world'
console.log(capitalize('hello_world'))  // 'Hello_world'
console.log(capitalize('hello.world'))  // 'Hello.world'

处理数字和符号

typescript
import { capitalize } from 'radash'

console.log(capitalize('123hello'))     // '123hello' (数字开头)
console.log(capitalize('!hello'))       // '!hello' (符号开头)
console.log(capitalize('@world'))       // '@world' (符号开头)
console.log(capitalize('hello123'))     // 'Hello123'

处理空字符串和单个字符

typescript
import { capitalize } from 'radash'

console.log(capitalize(''))             // ''
console.log(capitalize('a'))            // 'A'
console.log(capitalize('A'))            // 'A'
console.log(capitalize('z'))            // 'Z'

处理Unicode字符

typescript
import { capitalize } from 'radash'

console.log(capitalize('café'))         // 'Café'
console.log(capitalize('naïve'))        // 'Naïve'
console.log(capitalize('résumé'))       // 'Résumé'
console.log(capitalize('über'))         // 'Über'

在数组中使用

typescript
import { capitalize } from 'radash'

const words = ['hello', 'world', 'javascript', 'react']
const capitalizedWords = words.map(word => capitalize(word))

console.log(capitalizedWords)
// ['Hello', 'World', 'Javascript', 'React']

处理对象属性

typescript
import { capitalize } from 'radash'

const user = {
  firstName: 'john',
  lastName: 'doe',
  city: 'new york'
}

const formattedUser = {
  firstName: capitalize(user.firstName),
  lastName: capitalize(user.lastName),
  city: capitalize(user.city)
}

console.log(formattedUser)
// { firstName: 'John', lastName: 'Doe', city: 'New york' }

处理表单数据

typescript
import { capitalize } from 'radash'

function formatName(name: string) {
  return capitalize(name.trim())
}

console.log(formatName('  john  '))     // 'John'
console.log(formatName('  MARY  '))     // 'Mary'
console.log(formatName('  david  '))    // 'David'

注意事项

  1. 只转换第一个字符: 只有字符串的第一个字符会被转换为大写
  2. 其余字符小写: 字符串中除第一个字符外的所有字符都会被转换为小写
  3. 空字符串: 空字符串会返回空字符串
  4. 非字母字符: 如果第一个字符不是字母,函数会保持原样
  5. Unicode支持: 函数支持Unicode字符,包括重音符号

与其他方法的区别

  • toUpperCase(): 将所有字符转换为大写
  • toLowerCase(): 将所有字符转换为小写
  • capitalize(): 只将第一个字符转换为大写,其余转换为小写
  • titleCase(): 将每个单词的首字母转换为大写

实际应用场景

  1. 用户界面: 格式化用户输入的名字
  2. 数据展示: 格式化显示数据中的标题
  3. 表单处理: 标准化用户输入
  4. 文件命名: 格式化文件名
  5. API响应: 格式化从API返回的数据

Released under the MIT License.