@Nerevar96

Как понять, что Codwars от меня хочет?

Изначальная задача: Сделать так, чтобы каждое новое слово в строке начиналось с заглавной буквы.

Я набросал решение в тестовой html страничке, в алерт вывелась строка, где каждое новое слово начинается с большой буквы:
String.prototype.toJadenCase = function () {
  let str = "How can mirrors be real if our eyes aren\'t real"

  let arr = str.split(" ")

  for (var i = 0; i < arr.length; i++) {
    arr[i] = arr[i].charAt(0).toUpperCase() + arr[i].slice(1);
  }

  let str2 = arr.join(" ")

  alert(str2)

};

String.prototype.toJadenCase()

То есть как бы технически, задание выполнено, пробую адаптировать мое решение под изначальное условие в компиляторе Codwars (оно выглядит так):
String.prototype.toJadenCase = function () {
    //...
};


Я адаптировал его таким образом:
String.prototype.toJadenCase = function () {
  let str = "How can mirrors be real if our eyes aren\'t real"

  let arr = str.split(" ")

  for (var i = 0; i < arr.length; i++) {
    arr[i] = arr[i].charAt(0).toUpperCase() + arr[i].slice(1);
  }

  let str2 = arr.join(" ")

  console.log(str2)

};

String.prototype.toJadenCase()


В консоли тоже выводится строка, как это требует тест, но тест, почему то пропускать мое решение не хочет...

Инфа из консоли:
62895f61b9eea535861951.png

Тест:
62895f70c28ef156505263.png

Как я понял, в консоль моя строка все таки выводится. В чем тогда дело?
  • Вопрос задан
  • 100 просмотров
Решения вопроса 1
вы не должны выводить строку в консоль сами. Вы должны сделать так, чтобы функция возвращала строку в необходимом формате
spoiler
String.prototype.toJadenCase = function () {  
  return this.split(' ').map(w => w[0].toUpperCase() + w.substring(1)).join(' ');
};
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы