Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

ตรวจสอบว่าองค์ประกอบอาร์เรย์ทั้งหมดสามารถต่อกันได้หรือไม่ใน JavaScript


ปัญหา

คำสองคำสามารถ "ต่อกัน" (mesh) ได้ หากส่วนท้ายของคำแรกตรงกับส่วนหน้าของคำที่สอง เช่น "robinhood" และ "hoodie" สามารถต่อกันได้

เราต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ของสตริง หากคำทั้งหมดในอาร์เรย์ต่อกันได้ ฟังก์ชันควรคืนค่าตัวอักษรที่ต่อกันเป็นสตริง มิฉะนั้นคืนค่าสตริงว่าง

ตัวอย่าง

โค้ดตัวอย่างดังนี้:

const arr = ["allow", "lowering", "ringmaster", "terror"];
const meshArray = (arr = []) => {
  let res = "";
  for(let i = 0; i < arr.length-1; i++){
    let temp = (arr[i] + " " + arr[i + 1]).match(/(.+) \1/);
    if(!temp){
      return '';
    };
    res += temp[1];
  };
  return res;
};
console.log(meshArray(arr));

ผลลัพธ์

ผลลัพธ์ในคอนโซล:

lowringter