Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在javascript中返回包含对象的字符串?_Javascript_Function_Object_Key_Return Value - Fatal编程技术网

如何在javascript中返回包含对象的字符串?

如何在javascript中返回包含对象的字符串?,javascript,function,object,key,return-value,Javascript,Function,Object,Key,Return Value,我正在努力完成这项家庭作业。我被第二个问题困住了,在第二个问题中,我必须返回一个带有对象键值的字符串。当我把这个语法用于name键时,我想我是对的。然而,即使console.log显示了名称,结果显示我做得不对。所以我用传统的方法试了一下,又犯了一个错误。我被他们想让我怎么做的困住了。我怎么做并不重要,只要它能产生相同的结果,但我想学校不会教我 /** * ### Challenge `getName` * * @instructions * This function takes a

我正在努力完成这项家庭作业。我被第二个问题困住了,在第二个问题中,我必须返回一个带有对象键值的字符串。当我把这个语法用于name键时,我想我是对的。然而,即使console.log显示了名称,结果显示我做得不对。所以我用传统的方法试了一下,又犯了一个错误。我被他们想让我怎么做的困住了。我怎么做并不重要,只要它能产生相同的结果,但我想学校不会教我

/**
 * ### 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属性的值,就像我所做的那样。与之前的答案有什么不同吗?