自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

JavaScript:怎么將顏色字符串轉(zhuǎn)為對象?

開發(fā) 前端
今天一起來聊一聊JavaScript怎么將顏色字符串轉(zhuǎn)為對象?

 [[424559]]

 

將HSL顏色字符串轉(zhuǎn)換為具有每個顏色值的對象

思路:

  • 使用String.prototype.match()獲取一個包含3個字符串和數(shù)值的數(shù)組;
  • 將Array.prototype.map()與Number結(jié)合使用,將它們轉(zhuǎn)換為數(shù)值數(shù)組;
  • 使用數(shù)組分解將值存儲到命名變量中,并從中創(chuàng)建適當?shù)膶ο蟆?/li>

代碼實現(xiàn):

 

  1. const toHSLObject = (hslStr) => { 
  2.   const [hue, saturation, lightness] = hslStr.match(/\d+/g).map(Number); 
  3.   return { hue, saturation, lightness }; 
  4.  
  5. //測試 
  6. console.log(toHSLObject('hsl(50, 10%, 10%)'));  // { hue: 50, saturation: 10, lightness: 10 } 

 

根據(jù)以上思路,可將RGB、RGBA、HSLA進行同樣的處理,如下:

拓展一:將RGB顏色字符串轉(zhuǎn)換為具有每個顏色值的對象

代碼實現(xiàn):

 

  1. const toRGBObject = ( rgbStr ) => { 
  2.   const [red, green, blue] = rgbStr.match(/\d+/g).map(Number); 
  3.  
  4.   return {red, green, blue}; 
  5.  
  6. console.log(toRGBObject('rgb(128,0,128)')); // { red: 128, green: 0, blue: 128 } 

 

拓展二:將RGBA顏色字符串轉(zhuǎn)換為具有每個顏色值的對象

代碼實現(xiàn):

 

  1. const toRGBAObject = (rgbaStr) => { 
  2.   let [red, green, blue, alpha] = rgbaStr.match(/\d+(\.\d+)?/g).map(Number); 
  3.  
  4.   return {red, green, blue, alpha}; 
  5.  
  6. console.log(toRGBAObject('rgba(128,0,128, 0.5'));   // { red: 128, green: 0, blue: 128, alpha: 0.5 } 

 

拓展三:將HSLA顏色字符串轉(zhuǎn)換為具有每個顏色值的對象

代碼實現(xiàn):

 

  1. const toRGBAObject = (hslaStr) => { 
  2.   const [hue, saturation, lightness, alpha] = hslaStr.match(/\d+(\.\d+)?/g).map(Number); 
  3.   return { hue, saturation, lightness, alpha}; 
  4.  
  5. console.log(toRGBAObject('hsla(128,0,128, 0.5'));   // { hue: 128, saturation: 0, lightness: 128, alpha: 0.5 } 

 

責任編輯:華軒 來源: 今日頭條
相關(guān)推薦

2015-06-09 14:43:36

javascript操作字符串

2021-07-04 12:57:39

字符串數(shù)值間隔

2011-07-11 16:00:22

字符串拼接

2020-09-03 10:13:49

JavaScript字符串pad

2019-12-25 15:41:50

JavaScript程序員編程語言

2020-12-31 07:56:02

JavaScript 字符串技巧

2020-05-12 08:53:15

JavaScript字符串處理庫

2011-07-11 15:36:44

JavaScript

2020-10-16 18:35:53

JavaScript字符串正則表達式

2017-06-13 12:40:47

Python字符串對象

2023-02-09 16:15:27

JavaScript編程語言字符串

2023-04-17 16:19:32

編程語言JavaScript開發(fā)

2021-10-31 23:01:50

語言拼接字符串

2022-12-15 16:23:32

JavaScrip字符串開發(fā)

2024-02-19 15:38:08

JsonPython字符串

2010-01-07 16:55:06

JSON字符串

2015-03-19 15:04:06

2025-04-27 10:02:50

JavaScript前端開發(fā)

2025-02-21 12:30:00

字符串前端JavaScript

2020-08-12 22:03:17

JavaScript開發(fā)技術(shù)
點贊
收藏

51CTO技術(shù)棧公眾號