GeoPal Notes

Random stuff

Random HEX color

JavaScript minimal one-liner

const hexColor = () =>
  '#' +
  crypto
    .getRandomValues(new Uint8Array(3))
    .reduce((a, c) => a + c.toString(16).padStart(2, '0'), '');

Σημεία άξια προσοχής:

  • Η μέθοδος Crypto.getRandomValues() αποδίδει κρυπτογραφικά ισχυρές τυχαίες τιμές.
  • Δημιουργική χρήση των .reduce() και .padStart() σε μία γραμμή.

Παράδειγμα εκτέλεσης σε Javascript:

console.log(hexColor());

Δες επίσης και ζωντανό παράδειγμα εκτέλεσης στο CodePen σε περίπτωση που θες να πειραματιστείς.

PHP version

function hexColor() {
    return '#' . bin2hex(random_bytes(3));
}
  • Η random_bytes() αποδίδει κρυπτογραφικώς ασφαλή τυχαία bytes.
  • Μετατροπή δυαδικών τιμών σε δεκαεξαδική αναπαράσταση με τη χρήση της bin2hex().

Παράδειγμα εκτέλεσης σε PHP:

echo hexColor();