如何在javascript中返回包含对象的字符串?
我正在努力完成这项家庭作业。我被第二个问题困住了,在第二个问题中,我必须返回一个带有对象键值的字符串。当我把这个语法用于name键时,我想我是对的。然而,即使console.log显示了名称,结果显示我做得不对。所以我用传统的方法试了一下,又犯了一个错误。我被他们想让我怎么做的困住了。我怎么做并不重要,只要它能产生相同的结果,但我想学校不会教我如何在javascript中返回包含对象的字符串?,javascript,function,object,key,return-value,Javascript,Function,Object,Key,Return Value,我正在努力完成这项家庭作业。我被第二个问题困住了,在第二个问题中,我必须返回一个带有对象键值的字符串。当我把这个语法用于name键时,我想我是对的。然而,即使console.log显示了名称,结果显示我做得不对。所以我用传统的方法试了一下,又犯了一个错误。我被他们想让我怎么做的困住了。我怎么做并不重要,只要它能产生相同的结果,但我想学校不会教我 /** * ### Challenge `getName` * * @instructions * This function takes a
/**
* ### Challenge `getName`
*
* @instructions
* This function takes as its only argument
* an object containing a `name` property,
* and return a string that reads `Hello, my name is {name}`,
* where `{name}` is the name stored in the object.
*
* For example, if we invoke `getName`
* passing { id: 1, name: 'Leia', email: 'leia@leia.com` } as the argument,
* the returned value should look like `Hello, my name is Leia`.
*/
function getName(name) {
var hallo = {
name: name
};
return 'Hello, my name is' + ' ' + hallo.name;
}
正如@Amadan所说,您正在接收一个对象作为参数。参数不应该是
name
,而应该是person
。然后返回一个字符串并使用person.name
在注释中的文档之后,您希望函数如下所示:
/**
*####挑战`getName`
*
*@说明
*此函数将作为其唯一参数
*包含“name”属性的对象,
*并返回一个字符串,该字符串的内容为“你好,我的名字是{name}”,
*其中`{name}`是存储在对象中的名称。
*
*例如,如果我们调用`getName`
*正在传递{id:1,姓名:'Leia',电子邮件:'leia@leia.com`}作为论据,
*返回的值应该是“你好,我的名字是Leia”。
*/
函数getName(person){
返回“你好,我的名字是”+person.name;
}
const person={
id:1,
姓名:“莱娅”,
电邮:'leia@leia.com'
};
console.log(getName(person))代码>在将对象传递到函数中时,可以对其进行分解,只访问赋值所需的属性:
let passing = { id: 1, name: 'Leia', email: 'leia@leia.com` }
传入您需要使用的所需属性。必须有相同的名字
function getName( { name /*, email, id*/} ) {
return `Hello my name is ${name}`; //You can also return a console log
}
let instance1 = getName( passing);
console.log(instance1);
如果它对任何人都有帮助。这对我有用
函数getName(person){
return你好,我的名字是${person.name}
;
}您收到的是作为参数的对象,而不是名称本身。该函数不会像getName(“Boss”)
那样调用,而是像getName({id:1,name:'Leia',email:'leia@leia.com“})
。现在,如果您选择这样调用函数,它将不会返回正确的结果。因此,无需创建新对象(hallo
)。只需访问函数参数的name
属性即可。另外,请以后阅读。实际上,函数已经有了“name”作为getname()的参数。我必须在我制作的对象中使用该参数。这是按照说明进行的。他们还说返回字符串,后跟“name”的对象值。嘿,我尝试了代码,它成功了。非常感谢。“这个函数将包含name属性的对象作为唯一的参数”,这是指令中所说的。函数的参数不满足此指令-函数的参数是字符串,指令要求参数是一个对象,该对象将具有名为name的属性。如果你打算在这个赋值中得到a,那么在理解上会有很大的不同:)然后指令会说返回字符串,其中name是对象中name属性的值,就像我所做的那样。与之前的答案有什么不同吗?