Viết mã: Palindromes trong JavaScript

Jan 22 2023
Đoạn mã này định nghĩa một hàm gọi là “isPalindrome” nhận một đầu vào duy nhất, “S”, là chuỗi sẽ được kiểm tra xem nó có phải là một palindrome hay không. Palindrome là một từ, cụm từ, số hoặc các chuỗi ký tự khác đọc xuôi và ngược giống nhau.

Đoạn mã này định nghĩa một hàm gọi là “isPalindrome” nhận một đầu vào duy nhất, “S”, là chuỗi sẽ được kiểm tra xem nó có phải là một palindrome hay không. Palindrome là một từ, cụm từ, số hoặc các chuỗi ký tự khác đọc xuôi và ngược giống nhau.

Bước đầu tiên trong hàm là chuyển đổi “S” thành chữ thường bằng cách sử dụng phương thức “toLocaleLowerCase()”, sau đó sử dụng phương thức “replace()” để xóa tất cả các ký tự không phải chữ và số bằng cách thay thế chúng bằng một chuỗi trống. Điều này được thực hiện sao cho các ký tự duy nhất còn lại trong chuỗi là các chữ cái và số, điều này sẽ giúp dễ dàng kiểm tra xem chuỗi có phải là một bảng màu hay không.

Sau đó, hàm khởi tạo hai biến, “trái” và “phải”, với các giá trị lần lượt là 0 và độ dài của “S” trừ đi 1. Các biến này sẽ được sử dụng để lặp qua các ký tự của “S” trong một vòng lặp while, vòng lặp này chạy cho đến khi “trái” không còn nhỏ hơn “phải”.

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')

Khi vòng lặp while hoàn thành, điều đó có nghĩa là toàn bộ chuỗi đã được kiểm tra và tất cả các ký tự đều bằng nhau, vì vậy hàm trả về “true” bằng cách sử dụng console.log.

Cuối cùng, hàm được gọi bằng cách chuyển “abda” làm đầu vào, điều này sẽ được đánh giá là đúng vì 'abda' là một bảng màu nhạt.

Học vui vẻ

Hãy ủng hộ ấn phẩm của chúng tôi bằng cách theo dõi nó

Viết mã: Tìm các giá trị tối thiểu/tối đa trong một mảng bằng JavaScript