Lodash _.lowerFirst() Method

Beginner
5 min read
Updated: Nov 2026
5 examples
String

Definition

Converts the first character of a string to lowercase and leaves the rest unchanged. Inverse of _.upperFirst. Part of Lodash String (stable — not deprecated).

Pass the string and options shown below. Check the return type before you chain another helper.

Syntax

Call _.lowerFirst. Start with this line.

Lodash
_.lowerFirst([string=''])
CallWhat it does
_.lowerFirst([string=''])Primary signature.
_.lowerFirst(string)Transform or inspect a string.

Prefer import lowerFirst from "lodash/lowerFirst" when you want a smaller bundle.

Library declarations
Lodash
_.lowerFirst([string=''])

Parameters

ParameterDescription
stringOptional. Input to convert

Return Value

Return ValueDescription
*New string (first char lower)

Lodash Examples

Example 1 — Official: Fred

Lowercase a capitalized name’s first letter.

Lodash
_.lowerFirst('Fred');
// → 'fred'
Try It Yourself

How It Works

  1. First. F becomes f.
  2. Rest. red stays as-is.
  3. Result. fred.
  4. Official. Same as the Lodash docs.

Example 2 — Official: FRED

Only the first character changes — the rest stay uppercase.

Lodash
_.lowerFirst('FRED');
// → 'fRED'
Try It Yourself

How It Works

  1. Not toLower. Does not make the whole string lower.
  2. F → f. First char only.
  3. RED. Unchanged.
  4. Official. Docs highlight this contrast.

Example 3 — PascalCase → camelCase

Turn a type/class style name into a JS identifier.

Lodash
_.lowerFirst('UserName');
// → 'userName'

_.lowerFirst('XMLParser');
// → 'xMLParser'
Try It Yourself

How It Works

  1. UserName. Typical Pascal → camel result.
  2. XMLParser. Only X changes — acronyms need care.
  3. No split. Middle capitals stay.
  4. Tip. For smarter word casing, use _.camelCase.

Example 4 — Already lowercase / empty

Safe no-ops for common edge inputs.

Lodash
_.lowerFirst('fred');
// → 'fred'

_.lowerFirst('');
// → ''
Try It Yourself

How It Works

  1. Already lower. First char stays f.
  2. Empty. Returns ''.
  3. Safe. Fine to call unconditionally.
  4. Default. Missing arg → ''.

Example 5 — vs upperFirst / toLower / lowerCase

Same input, different helpers.

Lodash
var s = 'FRED';

_.lowerFirst(s);  // → 'fRED'
_.upperFirst(s);  // → 'FRED'
_.toLower(s);     // → 'fred'
_.lowerCase(s);   // → 'fred'
Try It Yourself

How It Works

  1. lowerFirst. First char only.
  2. upperFirst. Opposite for the first char.
  3. toLower. Entire string lower.
  4. lowerCase. Word-aware lower (spaces for multi-word input).

Browser & Runtime Support

_.lowerFirst is a Lodash 4.x String helper. It runs anywhere Lodash runs — modern browsers (CDN or bundle) and Node.js / Bun / Deno with npm install lodash or lodash/lowerFirst. Native idea: s.charAt(0).toLowerCase() + s.slice(1).

✓ Stable · Lodash 4.x

_.lowerFirst()

Available in [email protected] and lodash/lowerFirst modular import. Works in evergreen browsers and current Node LTS when Lodash is installed.

100% With Lodash 4.x
Google Chrome Supported · Desktop & Mobile
Full support
Mozilla Firefox Supported · Desktop & Mobile
Full support
Apple Safari Supported · macOS & iOS
Full support
Microsoft Edge Supported · Chromium
Full support
Internet Explorer No native support · Use a polyfill
Polyfill
Opera Supported · Modern versions
Full support
Samsung Internet Supported · Android
Full support
Bun Supported · JavaScript runtime
Supported
Deno Supported · JavaScript runtime
Supported
Node.js Supported · Server runtime
Supported
Android WebView Supported · Modern WebView
Full support
_.lowerFirst Lodash 4.x

Bottom line: Safe for production. Use for Pascal→camel tweaks; use toLower/camelCase for broader transforms.

Frequently Asked Questions

_.lowerFirst([string='']) lowercases only the first character. Official: _.lowerFirst('Fred') → 'fred'; _.lowerFirst('FRED') → 'fRED'.
_.toLower lowercases the whole string. _.lowerFirst changes only the first character.
_.lowerCase lowercases and inserts spaces between words. _.lowerFirst does not split or reformat words.
Commonly to turn PascalCase into camelCase identifiers (UserName → userName) without touching the rest.
The string is effectively unchanged.
_.upperFirst() uppercases only the first character.

Next: _.pad()

Pad a string on both sides to reach a target length.

_.pad() →

About the author

Mari Selvan M P
Mari Selvan M P 🔗

Developer, cloud engineer, and technical writer

  • Experience 12 years building web and cloud systems
  • Focus Full Stack Development, AWS, and Developer Education

I write practical tutorials so students and working developers can learn by doing—from databases and APIs to deployment on AWS.

9 people found this page helpful