From 7efa5d07f414b89629cc9e8fa6df172c5233d1ff Mon Sep 17 00:00:00 2001 From: Angelos Chalaris Date: Wed, 14 Oct 2020 20:38:56 +0300 Subject: [PATCH] Create toRGBObject.md --- toRGBObject.md | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 toRGBObject.md diff --git a/toRGBObject.md b/toRGBObject.md new file mode 100644 index 000000000..5901c1f01 --- /dev/null +++ b/toRGBObject.md @@ -0,0 +1,21 @@ +--- +title: toRGBObject +tags: string,browser,regexp,intermediate +--- + +Converts an `rgb()` color string to an object with the values of each color. + +- Use `String.prototype.match()` to get an array of 3 string with the numeric values. +- Use `Array.prototype.map()` in combination with `Number` to convert them into an array of numeric values. +- Use array destructuring to store the values into named variables and create an appropriate object from them. + +```js +const toRGBObject = rgbStr => { + const [r, g, b] = rgbStr.match(/\d+/g).map(Number); + return { r, g, b }; +}; +``` + +```js +toRGBObject('rgb(255,12,0)'); // {r: 255, g: 12, b: 0} +```