隨機產生顏色以及十六進位顏色與RGB顏色值的相互轉換

來源:互聯網
上載者:User

/**

 * 隨機產生顏色

 * @return 隨機產生的十六進位顏色

 */


function randomColor(){

  var colorStr=Math.floor(Math.random()*0xFFFFFF).toString(16).toUpperCase();

  return "#"+"000000".substring(0,6-colorStr)+colorStr;

}

 

/**

 * 十六進位色彩轉換為RGB顏色

 * @param color 要轉換的十六進位顏色

 * @return RGB顏色


function colorHexToRGB(color){

  color=color.toUpperCase();

  var regexpHex=/^#[0-9a-fA-F]{3,6}$/;//Hex

  if(regexpHex.test(color)){

    var hexArray=new Array();

    var count=1;

    for(var i=1;i<=3;i++){

      if(color.length-2*i>3-i){

        hexArray.push(Number("0x"+color.substring(count,count+2)));

        count+=2;

      }else{

        hexArray.push(Number("0x"+color.charAt(count)+color.charAt(count)));

        count+=1;

      }

    }

    return "RGB("+hexArray.join(",")+")";

  }else{

    return color;

  }

}

 

/**

 * RGB色彩轉換為十六進位顏色

 * @param color 要轉換的RGB顏色

 * @return 十六進位顏色

 */


function colorRGBToHex(color){

  var regexpRGB=/^(rgb|RGB)\([0-9]{1,3},\s?[0-9]{1,3},\s?[0-9]{1,3}\)$/;//RGB

  if(regexpRGB.test(color)){

    color=color.replace(/(\(|\)|rgb|RGB)*/g,"").split(",");

    var colorHex="#";

    for(var i=0;i<color.length;i++){

      var hex=Number(color[i]).toString(16);

      if(hex.length==1) hex="0"+hex;

      colorHex+=hex;

    }

    return colorHex;

  }else{

    return color;

  }

}

 

摘自  ゛白晝怎懂夜的黑ヽ 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.