以下问题来自网站域codewars.com
我正在尝试解决 JavaScript 编码问题,但是网站的控制台不断抛出语法错误。我希望有一个提示,而不是一个完整的答案,希望我仍然可以解决此问题,但是我一直在用控制台碰壁。但是,如果您觉得不能不给出答案就不能有效地提供提示,或者您只想给出答案,我就可以了。
因此,我必须定义一个函数,该函数接受包含歌曲歌词的字符串参数song
(如图1所示),并返回其可读版本。
字符串的大小写(是否为大写)并不重要。将song
字符串输入到函数中时,空格将不存在,并且单词之间的字符串中将包含短语WUB
。有时单词之间有多个WUB
。同样,必须返回歌曲的可读版本,单词之间要留有空格。
这是我的最新代码:
function songDecoder(song){
var songWords = song.split("WUB");
var result = "";
for (var i = 0; i < (songWords.length) + 1; i++) {
if (i == songWords.length) {
result += " " + songWords[i];
} else {
result += songWords[i] + " ";
}
return result;
}
图#1显示在上方
这是网站的控制台在图1中显示的代码上返回的内容:
时间:818ms [;]错误:1 [;]退出代码:1 [;]
STDERR:
/home/codewarrior/index.js:44
});
^
SyntaxError: Unexpected token )
at createScript (vm.js:80:10)
at Object.runInThisContext (vm.js:139:10)
at Module._compile (module.js:616:28)
at Object.Module._extensions..js (module.js:663:10)
at Module.load (module.js:565:32)
at tryModuleLoad (module.js:505:12)
at Function.Module._load (module.js:497:3)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
at [eval]:1:1
图2显示在上方
答案 0 :(得分:0)
For循环缺少右括号'}' 这是您的正确功能:
function songDecoder(song){
var songWords = song.split("WUB");
var result = "";
for (var i = 0; i < (songWords.length) + 1; i++) {
if (i == songWords.length) {
result += " " + songWords[i];
} else {
result += songWords[i] + " ";
}
} // <- this one was missing
return result;
}