我想创建一个返回字符串特定次数的函数。我试过这个。
function stringRepeat(word, number) {
var string = ""
for(i= 0; i < number; i++) {
string += word;
}
}
console.log(stringRepeat("grey", 12));
然而,它没有完成这项工作。我应该改变什么?
我试图将“string + = word;”更改为“console.log(word)”,然后执行(但我在12条不同的行上写了“word” - 我希望将它放在一个长的字符串)。
当我执行现有代码时,结果是“未定义”。为什么是这样?
提前致谢!
答案 0 :(得分:3)
问题是你的函数没有返回它构建的字符串。所以它返回的是undefined
。
添加
return string;
在你的功能结束时。
请注意,您没有声明i
变量,这会使其变为全局变量,并可能导致其他错误。做这样的声明:
for(var i= 0; i < number; i++) {
答案 1 :(得分:1)
function stringRepeat(word, number) {
var string="";
for(var i= 0; i < number; i++) {
string += word;
}
return string;
}
alert(stringRepeat("grey", 2));
答案 2 :(得分:1)
function stringRepeat(word, number) {
var words =[];
for(var i= 0; i < number; i++) {
words[i]= word;
}
return words.join("");
}
//or
function stringRepeat(word, number) {
var string = ""
for(var i= 0; i < number; i++) {
string += word;
}
return string;
}
console.log(stringRepeat("fine", 52));
选择你喜欢的那个。