Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

การตรวจสอบอาร์เรย์สำหรับพาลินโดรม - JavaScript


เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ของตัวอักษร String / Number และส่งคืนอาร์เรย์ย่อยขององค์ประกอบทั้งหมดที่เป็นพาลินโดรมในอาร์เรย์ดั้งเดิม

ตัวอย่างเช่น −

หากอาร์เรย์อินพุตเป็น −

const arr = ['carecar', 1344, 12321, 'did', 'cannot'];

จากนั้นผลลัพธ์ควรเป็น −

const output = [12321, 'did'];

เราจะสร้างฟังก์ชันตัวช่วยที่ใช้ตัวเลขหรือสตริงและตรวจสอบว่าเป็นบูลีนหรือไม่ จากนั้นเราจะวนรอบอาร์เรย์ กรององค์ประกอบ palindrome และส่งคืนอาร์เรย์ที่กรองแล้ว

ตัวอย่าง

ต่อไปนี้เป็นรหัส -

const arr = ['carecar', 1344, 12321, 'did', 'cannot'];
const isPalindrome = el => {
   const str = String(el);
   let i = 0;
   let j = str.length - 1;
   while(i < j) {
      if(str[i] === str[j]) {
         i++;
         j--;
      }
      else {
         return false;
      }
   }
   return true;
};
const findPalindrome = arr => {
   return arr.filter(el => isPalindrome(el));
};
console.log(findPalindrome(arr));

ผลลัพธ์

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ในคอนโซล -

[ 12321, 'did' ]