在此JavaScript问题中,我的语法错误是什么?

时间:2019-09-24 04:29:13

标签: javascript string for-loop syntax

以下问题来自网站域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显示在上方

1 个答案:

答案 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;
}