这是我写的代码;
var nameString = function(name) {
console.log ("Hi, I am" + " " + name);
};
nameString("Bobby");
我试图让它返回一行说明;嗨,我是鲍比
相反,它返回三个:
嗨,我是鲍比
嗨,我是
嗨,我是鲍比
我无法弄清楚为什么它会返回三遍
这是我写的代码;
var nameString = function(name) {
console.log ("Hi, I am" + " " + name);
};
nameString("Bobby");
我试图让它返回一行说明;嗨,我是鲍比
相反,它返回三个:
嗨,我是鲍比
嗨,我是
嗨,我是鲍比
我无法弄清楚为什么它会返回三遍
Codecademy 出于某些原因运行该功能 3 次,主要是为了检测东西并提示您正确的代码......每次在控制台中输出一些东西,因为您输入console.log
. 改为使用return
它会起作用。
var nameString = function(name) {
return "Hi, I am" + " " + name;
};
console.log(nameString("Bobby"));
不要在 codecademy 功能中使用控制台,它需要在通话中..
这本身只是一次呈现结果。也许它嵌套在一些确保三个执行周期的代码中......
嗯,这是我第一次看到像你这样的函数(我不是说它不好,我不是 JavaScript 专家)......
试试看:
function getNameString(name) {
return "Hi, I am" + " " + name;
};
var nameString = getNameString("Bobby");
console.log(nameString);
我认为您的问题是您试图将函数的返回值作为变量的值。但实际上,您的函数不会返回任何值。因此,也许它导致了您告诉我们的这种罕见行为……其他方法与您的方法更相似:
var nameString = function(name) {
return "Hi, I am" + " " + name;
};
nameString("Bobby");
console.log(nameString);
用它:
var nameString = function(name) {
return "Hi, I am" + " " + name;
};
var theName = prompt("What is your name?");
var result = nameString(theName);
console.log(result);