我正在编写作业代码,但是即使在使console.log输出预期的答案时,我在repl.it中写的代码也会出现“语法错误”意外的“”,该代码未读为true并显示了代码完成
我尝试创建新变量并将其同步到此变量并返回,但是代码未读为真
这是预期的“在Person的原型中添加一个名为“ shoutName”的方法,该方法将以所有大写字母返回该人的姓名。” 这就是回报
function Person(name) {
this.name = name;
this.shoutName = function() {
name.toUpperCase();
return.this.name.toUpperCase();
}
}
/* Do not modify code below this line */
const john = new Person('John');
console.log(john.shoutName(), '<-- should be "JOHN"');
答案 0 :(得分:0)
您应在.
之后删除return
。同样,您没有将方法添加到prototype
中,而是将方法添加到了对象本身。您应该将方法添加到Person.prototype
function Person(name){
this.name = name;
}
Person.prototype.shoutName = function() {
return this.name.toUpperCase();
}
/* Do not modify code below this line */
const john = new Person('John');
console.log(john.shoutName(), '<-- should be "JOHN"');
答案 1 :(得分:0)
在return
关键字和要返回的值之间应该有一个空格,而不是一个引起SyntaxError
的点。另外,您应该将shoutName
方法添加到Person
的原型中,而不是创建的每个Person对象中,以提高可维护性。
function Person(name) {
this.name = name;
}
Person.prototype = {
/*add any methods you want all Person objects to have*/
shoutName: function(){
return this.name.toUpperCase();
}
};
const john = new Person('John');
console.log(john.shoutName(), '<-- should be "JOHN"');