averageColor
used for job application
by Jared Meadows
HTML
<div id="console-log"></div>
JavaScript
var consoleLine = "<p class=\"console-line\"></p>";
console = {
log: (text) => {
const myDiv = document.createElement('div');
myDiv.innerHTML = text;
document.getElementById('console-log').append(myDiv);
//$("#console-log").append($(consoleLine).html(text));
}
};
//console.clear();
console.log('color 1: ' + "AAAAAA");
console.log('color 2: ' + "CCCCCC");
console.log("output: " + averageColor("AAAAAA", "CCCCCC"));
//console.log("output: ", averageColor("abcd", "dddd"));
//console.log("easy option: ", averageColor("444444", "000000"));
/**
* take the average color between 2 colors and return the result
*
* @param {string} color1
* 6 digit hexidecimal string representing 1st color to be averaged
* @param {string} color2
* 6 digit hexidecimal string representing 2nd color to be averaged
*/
function averageColor(color1, color2) {
let tempColor;
let retColor = '';
for (var j=0;j<color1.length;j+=2) {
tempColor = Math.round((parseInt(color1.slice(j,j+2), 16) + parseInt(color2.slice(j,j+2), 16)) / 2,0);
retColor += ("0"+tempColor.toString(16)).slice(-2); //add tuple onto return color (convert integer to hexidecimal, and add 0 padding)
}
return retColor;
}