各位晚上好!
我是这个网站的新手,我正在学习javaScript,但我仍然是一个菜鸟,被困在这个地方,我无法简单地理解出了什么问题。
我有以下指示:
编写一个名为nameString()的函数
它应该以name为参数。
该函数返回一个等于“ Hi,I am” +“” +名称的字符串。
通过传递名称来调用nameString(),并使用console.log打印输出。
我写:
var nameString = function (name) {return "Hi, I am" + " " + name;};
nameString (Myrrh); console.log (name);
但是控制台显示
ReferenceError: Myrrh is not defined
。我尝试写然后
nameString (Myrrh); console.log (nameString);
,但也没有用。如果我写
nameString (name); console.log (nameString);
它不再引发该错误,但控制台将打印出[Function]
而不是我应该得到的''Hi, I am Myrrh''
消息。我是函数的新手,据我了解,您在调用函数时只需在参数的括号中分配一个值,这意味着
nameString (Myrrh);
应该没问题,因为“ Myrrh”是(name)的值。这对于其他练习非常有效,但不适用于此练习。此外,调用该函数并在花括号内登录也不会更改任何内容。而且,当然,将花括号内的“名称”更改为其他名称也不起作用。我也将var nameString = function (name)
更改为function nameString (name)
,因为它们似乎表示相同或相似的含义(不确定差异),但仍会引发相同的错误。我被困住了,不知道如何解决这个问题。作为初学者,我可能会错过最愚蠢的细节,但是无论我进行什么更改,都会引发错误。
PS:如果有帮助的话,这是Code Academy的一项练习。
最佳答案
您所指的是名为Myrrh
的对象,应在引号之间传递字符串。
我也注意到您没有将函数的返回值分配给任何变量:
var name = nameString ("Myrrh");
console.log(name);
关于javascript - javaScript,函数,打印我的名字(初学者),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27885447/