我正试图在可汗学院做一些简单的编码。该程序仅创建4本书,包括书架,作者,书名和书评。当我尝试将颜色插入无法使用的填充命令时,我遇到了一个对象存储颜色的问题。还有星星 (评分系统)搞砸了,如果您愿意,可以帮助我。
book[{
bookColor: [255, 0, 0];
} {
bookColor: [0, 0, 255]
}]
for (var j = 0; j < 4; j++) {
fill(book[j].colorBook, book[j].colorBook, book[j].bookColor);
//this did not work ;( ;( ended up with the books being white.
var book = [{ /*first book*/
title: "Vampirates",
stars: 4,
bookColor: [93, 240, 98],
author: "Justin Somper"
},
{ /*Second book*/
title: "Harry Potter",
stars: 5,
bookColor: [235, 240, 93],
author: "J.K Rowling"
}, /*thrid book*/
{
title: "Junie B Jones",
stars: 2,
bookColor: [255, 0, 0],
author: "Barbra Park"
},
{ /*fourth book*/
title: "Cat in the hat",
stars: 5,
bookColor: [0, 0, 255],
author: "Dr. Seus",
}
];
// draw shelf
fill(173, 117, 33);
rect(0, 120, width, 10);
// draw lots of books
for (var j = 0; j < 4; j++) {
fill(book[j].colorBook, book[j].colorBook, book[j].bookColor);
rect(j * 102, 19, 90, 100);
//title
textSize(12);
fill(0, 0, 0);
text(book[j].title, j * 104 + 7, 27, 76, 100);
//author
textSize(10);
text(book[j].author, j * 104 + 10, 43, 70, 98);
}
for (var i = 0; i < book[i].stars; i++) {
image(getImage("cute/Star"), 4 + i * 16, 87, 20, 35);
}
我希望一行(书架)上有4个正方形(书本),并且书本上应有作者,书名,正确数量的星星,并且它们的颜色应在右边。绿色,黄色,红色,蓝色。非常感谢您的帮助,它将极大地影响我对Java Script的学习。
答案 0 :(得分:1)
您正尝试访问colorBook
而不是bookColor
:
fill(book[j].colorBook, book[j].colorBook, book[j].bookColor);