임의 색상 한 줄의 js 코드로 임의 색상 생성
6192 단어 javascriptbeginners1minjswebdev
그래서 여기에 간단한 해결책이 있습니다. 다음 스니펫은 16진수 형식의 임의 색상을 생성합니다.
var randomColor = '#'+Math.floor(Math.random()*16777215).toString(16);
//generates a random color -> #56eec7
그게 다야!🥳 이것을 함수에 넣고 임의의 색상이 필요할 때마다 함수를 호출할 수 있습니다.
function generateRandomColor()
{
var randomColor = '#'+Math.floor(Math.random()*16777215).toString(16);
return randomColor;
//random color will be freshly served
}
document.body.style.backgroundColor = generateRandomColor() // -> #e1ac94
someDiv.style.color = generateRandomColor() // -> #34c7aa
자, 이것이 트릭의 끝입니다. 바쁘신 분들은 여기에서 포스트를 남겨주시면 됩니다.
하지만, 숫자 16777215 및 toString(16)만 사용되는 이유를 알고 싶다면 다음 부분에서 해당 설명을 다룹니다.
코드를 3 부분으로 나누자
1.왜 숫자가 16777215입니까?
#000000
(새까만색)에서 #ffffff
(순백색)까지 다양합니다. 16777216
입니다. [result = m to the power of n => 16 to power of 6 => 16777216]
16777216
를 1000000
로 변환하고 16777215
를 ffffff
로 변환하는 것입니다. 따라서 16진수 변환을 위한 가장 높은 숫자인 1677772152.무작위성
Math.random()
를 곱하여 0 포함부터 1 제외 범위의 부동 소수점을 반환합니다.Math.random()*16777215
//->9653486.355498075
Math.floor()
를 사용합니다.Math.floor(Math.random()*16777215)
//->96953486
3.16진수 변환
toString()
이 있습니다. (96953486).toString(16)
//->934cee
Math.floor(Math.random()*16777215).toString(16);
//->12ef556
- All we need to now is just attach # before the string
var randomColor = '#'+Math.floor(Math.random()*16777215).toString(16);
//->#19feac
그게 다야!
감사합니다!
게시물을 성공적으로 완료했습니다.
행복한 C0ding!
Reference
이 문제에 관하여(임의 색상 한 줄의 js 코드로 임의 색상 생성), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/akhil_001/generating-random-color-with-single-line-of-js-code-fhj텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)