JavaScript - Complementary Colors Builder


We are required to write a JavaScript function that takes in hex color as one and only input.

Our function should then find the complementary color for the color taken in as input.

Here are some input and output pairs −

getComplementaryColor('#142814') = '#ebd7eb';
getComplementaryColor('#ffffff') = '#000000';
getComplementaryColor('#3399ff') = '#cc6600';

Example

The code for this will be −

const str1 = '#142814';
const str2 = '#ffffff';
const str3 = '#3399ff';
const getComplementaryColor = (color = '') => {
   const colorPart = color.slice(1);
   const ind = parseInt(colorPart, 16);
   let iter = ((1 << 4 * colorPart.length) - 1 - ind).toString(16);
   while (iter.length < colorPart.length) {
      iter = '0' + iter;
   };
   return '#' + iter;
};
console.log(getComplementaryColor(str1));
console.log(getComplementaryColor(str2));
console.log(getComplementaryColor(str3));

Output

And the output in the console will be −

#ebd7eb
#000000
#cc6600

Updated on: 23-Nov-2020

593 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements