Программирование: палиндромы в JavaScript

Jan 22 2023
Этот код определяет функцию под названием «isPalindrome», которая принимает один вход «S», который представляет собой строку, которая будет проверена, чтобы определить, является ли она палиндромом. Палиндром — это слово, фраза, число или другие последовательности символов, которые одинаково читаются вперед и назад.

Этот код определяет функцию под названием «isPalindrome», которая принимает один вход «S», который представляет собой строку, которая будет проверена, чтобы определить, является ли она палиндромом. Палиндром — это слово, фраза, число или другие последовательности символов, которые одинаково читаются вперед и назад.

Первым шагом в функции является преобразование «S» в нижний регистр с помощью метода «toLocaleLowerCase()», а затем с помощью метода «replace()» удаление всех небуквенно-цифровых символов путем замены их пустой строкой. Это сделано для того, чтобы в строке оставались только буквы и цифры, что упрощает проверку того, является ли строка палиндромом.

Затем функция инициализирует две переменные, «слева» и «справа», со значениями 0 и длиной «S» минус 1 соответственно. Эти переменные будут использоваться для перебора символов «S» в цикле while, который выполняется до тех пор, пока «лево» не станет меньше «право».

function isPalindrome(S) {
  S = S.toLocaleLowerCase().replace(/[\W_]/g, '') 
  let left = 0
  let right = S.length - 1

  while (left < right) {
    if (S[left] !== S[right]) {
      return console.log(false)
    }
    left++
    right--
  }
  return console.log(true)
}
isPalindrome('abda')

Когда цикл while завершается, это означает, что вся строка была проверена и все символы равны, поэтому функция возвращает «true» с помощью console.log.

Наконец, функция вызывается путем передачи «abda» в качестве входных данных, это будет оценено как истина, поскольку «abda» является палиндромом.

Удачного обучения

Поддержите нашу публикацию, подписавшись на нее

Кодирование: поиск минимального/максимального значений в массиве с использованием JavaScript