Converts a string, as a whole, to lowercase — same idea as String#toLowerCase. Separators stay put; only letters change case. Part of Lodash String (stable since 4.0.0 — not deprecated).
Pass the string and options shown below. Check the return type before you chain another helper.
Syntax
Call _.toLower. Start with this line.
Lodash
_.toLower([string=''])
Call
What it does
_.toLower([string=''])
Primary signature.
_.toLower(string)
Transform or inspect a string.
Prefer import toLower from "lodash/toLower" when you want a smaller bundle.
Library declarations
Lodash
_.toLower([string=''])
Parameters
Parameter
Description
string
Optional. Value to convert (default ''; non-strings are coerced)
_.toLower is a Lodash String helper available since 4.0.0. It runs anywhere Lodash runs — modern browsers (via CDN or bundle) and Node.js / Bun / Deno with npm install lodash.
✓ Stable · Lodash 4.x
_.toLower()
Available in [email protected] full builds and the lodash/toLower modular import. Works in evergreen browsers and current Node LTS when Lodash is installed.
100%With Lodash 4.x
Google ChromeSupported · Desktop & Mobile
Full support
Mozilla FirefoxSupported · Desktop & Mobile
Full support
Apple SafariSupported · macOS & iOS
Full support
Microsoft EdgeSupported · Chromium
Full support
Internet ExplorerNo native support · Use a polyfill
Polyfill
OperaSupported · Modern versions
Full support
Samsung InternetSupported · Android
Full support
BunSupported · JavaScript runtime
Supported
DenoSupported · JavaScript runtime
Supported
Node.jsSupported · Server runtime
Supported
Android WebViewSupported · Modern WebView
Full support
_.toLowerSince 4.0.0
Bottom line: Safe for production once Lodash is on the page. Prefer import toLower from "lodash/toLower" for smaller builds. Native String#toLowerCase is fine when you do not need Lodash.
Frequently Asked Questions
_.toLower([string='']) converts the whole string to lowercase, like String#toLowerCase. Official: _.toLower('--Foo-Bar--') → '--foo-bar--'.
_.toLower only changes letter case and keeps separators. _.lowerCase splits into space-separated words (e.g. '--Foo-Bar--' → 'foo bar').
For plain strings they usually match. Lodash coerces non-strings first and fits the rest of the Lodash string API.
No. Strings are immutable. _.toLower always returns a new string.
Yes. Compare _.toLower(a) === _.toLower(b) when casing should be ignored.
Use import toLower from "lodash/toLower" or require("lodash/toLower"). Full build: import _ from "lodash" then _.toLower.