说明 请注意,如果没有构造函数,我们需要使用3行代码来制作harry_potter,这是一个代表Harry Potter第1册的对象。
然后在第7行中,我们为Book对象引入了一个构造函数,我们将页面和作者属性作为参数传递。
使用这个构造函数制作the_hobbit,一本由“J.R.R. Tolkien”创作的320页的书。请注意,使用构造函数只能在一行而不是三行中执行此操作!
// 3 lines required to make harry_potter
var harry_potter = new Object();
harry_potter.pages = 350;
harry_potter.author = "J.K. Rowling";
// A custom constructor for book
function Book (pages, author) {
this.pages = pages;
this.author = author;
}
// Use our new constructor to make the_hobbit in one line
var the_hobbit = new Book ("J.R.R. Tokien", 320);
// That last line of code is my own, and when I submit the code I receive this error/warning:
//Oops, try again. Make sure that the_hobbit's author is J.R.R. Tolkien by passing it as the first argument to the Book constructor.
这是提交代码时的“输出”:
“J.K。罗琳”
答案 0 :(得分:1)
你太近了!你刚刚切换了参数。
你想要
var the_hobbit = new Book (320, "J.R.R. Tokien");
因为函数指定了Book(pages, author)
。你一直在做Book(author, pages)
。
你的基本人物。
答案 1 :(得分:1)
var the_hobbit = new Book ("J.R.R. Tokien", 320);
Tolkien,不是Tokien。 :)
var the_hobbit = new Book ("J.R.R. Tolkien", 320);
也许这个拼写错误在您的实际代码中?