Skip to content

capitalize

Convert the first character of a string to uppercase, and the rest to lowercase.

Basic Usage

typescript
import { capitalize } from 'radash'

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

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

Syntax

typescript
function capitalize(str: string): string

Parameters

  • str (string): The string to convert

Return Value

Returns a new string with the first character capitalized and the rest in lowercase.

Examples

Basic Usage

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'

Handling All Uppercase Strings

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'

Handling Mixed Case

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'

Handling Special Characters

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'

Handling Numbers and Symbols

typescript
import { capitalize } from 'radash'

console.log(capitalize('123hello'))     // '123hello' (starts with number)
console.log(capitalize('!hello'))       // '!hello' (starts with symbol)
console.log(capitalize('@world'))       // '@world' (starts with symbol)
console.log(capitalize('hello123'))     // 'Hello123'

Handling Empty Strings and Single Characters

typescript
import { capitalize } from 'radash'

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

Handling Unicode Characters

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'

Usage in Arrays

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']

Handling Object Properties

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' }

Handling Form Data

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'

Notes

  1. Only the First Character is Capitalized: Only the first character of the string is capitalized
  2. Rest is Lowercase: All characters except the first are converted to lowercase
  3. Empty String: An empty string returns an empty string
  4. Non-letter First Character: If the first character is not a letter, it is left as is
  5. Unicode Support: The function supports Unicode characters, including diacritics

Differences from Other Methods

  • toUpperCase(): Converts all characters to uppercase
  • toLowerCase(): Converts all characters to lowercase
  • capitalize(): Only capitalizes the first character, the rest are lowercase
  • titleCase(): Capitalizes the first letter of each word

Practical Application Scenarios

  1. User Interface: Format user input names
  2. Data Display: Format titles in displayed data
  3. Form Handling: Standardize user input
  4. File Naming: Format file names
  5. API Response: Format data returned from APIs

Released under the MIT License.