Welcome to the Treehouse Community
The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

Alex Lang
1,110 PointsWhat did I do wrong?
var html = '';
var red;
var green;
var blue;
var rgbColor;
function colors(red, green, blue) {
Math.floor(Math.random() * 256 );
}
for( var i = 1; i <= 10; i += 1 ) {
colors();
rgbColor = 'rgb(' + red + ',' + green + ',' + blue + ')';
html += '<div style="background-color:' + rgbColor + '"></div>';
}
document.write(html);
3 Answers

Antonio De Rose
20,882 Pointscan you please you the code formatter, and please use proper indentation, it is really hard to find, the issue.
how would the code, come in a nicer format, when you post a question is, like if the question comes from the background of javascript, see example
put 3 backticks, followed by the programming language, this case javascript
end with 3 backticks
document.write('hello');
click on the markdown cheatsheet link below, to get understanding.

Johnnt Trav
Courses Plus Student 1,283 Pointsvar html = '';
// red, green, and blue aren't being used so remove them
var red;
var green;
var blue;
var rgbColor;
function colors(red, green, blue) { //red, green, and blue are like variables that you can use inside your function scope. No where in your function are you using them, therefore you should remove them.
Math.floor(Math.random() * 256 ); // you need a return statement otherwise this function would give back nothing.
}
for( var i = 1; i <= 10; i += 1 ) {
colors(); // calling this function would give back nothing because you don't have a return statement. Even if you had a return statement this would output 1 random number, e.g. 145. So there's no reason you having that line of code there.
rgbColor = 'rgb(' + red + ',' + green + ',' + blue + ')'; // finally red, green, and blue should be replaced with your colors function.
html += '<div style="background-color:' + rgbColor + '"></div>';
}
document.write(html);
so it should look like this
var html = '';
var rgbColor;
function colors() {
return Math.floor(Math.random() * 256 );
}
for( var i = 1; i <= 10; i += 1 ) {
rgbColor = 'rgb(' + colors() + ',' + colors() + ',' + colors() + ')';
html += '<div style="background-color:' + rgbColor + '"></div>';
}
document.write(html);

Lucas Guimarães
Front End Web Development Techdegree Student 3,900 PointsI think there is one way much closer than yours
/// javascript
var html = ''; var red; var green; var blue; var rgbColor; function colors(red, green, blue) { red = Math.floor(Math.random() * 256 ); green = Math.floor(Math.random() * 256 ); blue = Math.floor(Math.random() * 256 ); return red, green, blue; }
for( var i = 1; i <= 10; i += 1 ) {
rgbColor = 'rgb(' + colors(red) + ',' + colors(green) + ',' + colors(blue) + ')'; html += '<div style="background-color:' + rgbColor + '"></div>';
} document.write(html); document.write("<h1> This is your last rgbColor " + rgbColor + "</h1>")
///
Rich Donnellan
25,767 PointsRich Donnellan
25,767 PointsQuestion updated with code formatting. Check out the Markdown Cheatsheet below the Add an Answer submission for syntax examples.