код не проходит тесты, пишет multiples WUB should be replaced by only 1 space: expected 'A   B   C' to equal 'A B C'
                  
                  
                  но если я меняю в (*)  '  ' на '1', то WUB should be replaced by 1 space: expected 'A1B1C' to equal 'A B C' 
                  
                  
                  то есть '1' добавляется 1 раз, а пробел несколько раз, почему?
                  
                  
                  
                  
                  
                  мой код
                  
                  
                  function songDecoder(song){
                  
                  
                    let wub = 'WUB'
                  
                  
                    let str = song
                  
                  
                    let i = 0
                  
                  
                    while (i < str.length - 2) {
                  
                  
                     if (str.indexOf(wub) !== -1) {
                  
                  
                       i = str.indexOf(wub)
                  
                  
                       str = str.slice(0, i) + ' ' + str.slice(i+3) (*)
                  
                  
                     }
                  
                  
                      else i = str.length
                  
                  
                    }
                  
                  
                    return str
                  
                  
                  }
                  
                  
                
вы хоть саму задачу бы кинули
задача вот https://www.codewars.com/kata/551dc350bf4e526099000ae5/train/javascript
ну это прям сильно проще регулярками делается
меня интересует не решение, а то, почему при одинаковом коде на выходе строки вообще разной длины даже получаются
вас просят по 1 пробелу, у вас по два, в итоге вы два пробелма меняете на "1". это вот то что явно не так) а в самом коде копаться не хочется, мне сложно читать(
я знаю, что не так, вопрос в том, с чего вдруг. я ввожу 1 пробел. если заменить на любой другой символ, все ок, почему пробел двойной...
вы в slice учли, что end не включается?
да. у меня все корректно работает с любым другим символом. и кстати при 1 пробеле он даже на тройной заменяет, по-моему. а вот двойной пробел на двойной. магия какая-то
еле понял логику, если честно хд крч, нет, не работает корректно с другими символами. косяк один везде
да нет, работает, причем в кодпене и с пробелом все ок. какой-то баг кодварс походу
я проверил только что, вам скрины нужны в качестве доказательств или что?
у вас коммент от человека, у которого нет ни одного реплая/лайка (т. е. подтверждения/согласия) и который не прикрепил своё решение, которое может быть ошибочным, очевидно vs. мои слова, что всё работает, которые я могу подтвердить и скинув решение, и кинув скрины так что либо поверьте мне, либо я вам всё-таки кину скрины, раз вы не хотите верить хд
Обсуждают сегодня