From 3c149253b15da7ef638441a9c74cec46444dd859 Mon Sep 17 00:00:00 2001 From: Angelos Chalaris Date: Thu, 11 Jan 2018 11:58:40 +0200 Subject: [PATCH] Add decapitalize --- snippets/decapitalize.md | 16 ++++++++++++++++ tag_database | 1 + 2 files changed, 17 insertions(+) create mode 100644 snippets/decapitalize.md diff --git a/snippets/decapitalize.md b/snippets/decapitalize.md new file mode 100644 index 000000000..be5459780 --- /dev/null +++ b/snippets/decapitalize.md @@ -0,0 +1,16 @@ +### decapitalize + +Decapitalizes the first letter of a string. + +Use array destructuring and `String.toLowerCase()` to decapitalize first letter, `...rest` to get array of characters after first letter and then `Array.join('')` to make it a string again. +Omit the `upperRest` parameter to keep the rest of the string intact, or set it to `true` to convert to uppercase. + +```js +const decapitalize = ([first, ...rest], upperRest = false) => + first.toLowerCase() + (upperRest ? rest.join('').toUpperCase() : rest.join('')); +``` + +```js +decapitalize('FooBar'); // 'fooBar' +decapitalize('FooBar', true); // 'fOOBAR' +``` diff --git a/tag_database b/tag_database index 7eccbefc8..ee007d575 100644 --- a/tag_database +++ b/tag_database @@ -22,6 +22,7 @@ createElement:browser,utility createEventHub:browser,event,advanced currentURL:browser,url curry:function,recursion +decapitalize:string,array deepFlatten:array,recursion defer:function detectDeviceType:browser