1. JavaScript / Говнокод #24223

    +4

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    function isPalindrom1(str) {
        if (str.toLowerCase().replace(/[^а-яА-ЯёЁ]/g, '') === str.toLowerCase().replace(/[^а-яА-ЯёЁ]/g, 
        '').split('').reverse().join('')) {
            return true;
         } else {
            return false;
         }
    }

    "Красиво, просто, изящно."
    h: post/351874/

    Запостил: gost, 04 Мая 2018

    Комментарии (4) RSS

    • > "Подумав дома, у меня получилось вот так:"
      function isPalindrom(str) {
          var str = str.toLowerCase(),
                lim = str.length - 1,
                i = 0,
                j = str.length - 1;
      
          while (i <= lim) {
              if (/[^а-яА-ЯёЁ]/.test(str[i])) {
                  i += 1;
              }
              if (/[^а-яА-ЯёЁ]/.test(str[j])) {
                  j -= 1;
              }
              if (str[i] != str[j]) {
                  return false;
              }
              i += 1;
              j -= 1;
         }
         return true;
      }


      Запах сишечки!
      Ответить
      • Тот самый случай, когда отрефакторенный код хуже оригинала — больше, медленнее, криво работает для нескольких не букв подряд (запятая и пробел, к примеру) да ещё и вылетает за границу массива (если в конце какая-нибудь точка).
        Ответить
    • Какой boolshit
      P.S. palindrome
      Ответить
      • В самой статье язык такой, как будто Настенька писала, а Бормондяша исправлял, но к концу статьи устал. Там много где записано на слух (что русские, что английские названия функций, даже такое важное JS-слово require написано неправильно).
        Ответить

    Добавить комментарий