chaos/scripts/utils.js

47 lines
1.0 KiB
JavaScript

'use strict';
/**
* Get a random whole number
*
* @param {number} min Minimal value for the number
* @param {number} max Maximal value for the number (excluded)
* @return {number} Random number
*/
export const randomNumber = (min, max) =>
Math.floor(Math.random() * (max - min)) + min;
/**
* Generate a random color
*
* @return {Array} RGB components
*/
export const randomColor = () => {
const color = [];
for (let i = 0; i < 3; i++) {
color.push(parseFloat(Math.random().toFixed(2)) * 255);
}
return color;
};
/**
* Convert a decimal number to its hexadecimal representation
*
* @param {number} input Number to be converted
* @return {string} Number representation
*/
const hex = input => {
let hex = parseInt(input, 10).toString(16);
return hex.length === 1 ? '0' + hex : hex;
};
/**
* Convert a RGB color to its hexadecimal representation
*
* @param {Array} color RGB color
* @return {string} Hex representation
*/
export const rgbToHex =
color => '#' + hex(color[0]) + hex(color[1]) + hex(color[2]);