เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับสองสตริงเป็นอาร์กิวเมนต์แรกและอาร์กิวเมนต์ที่สอง ให้เรียกสตริงเหล่านี้ว่า str1 และ str2 ฟังก์ชันควรตรวจสอบว่ามีการรวมสตริงย่อยใน str2 หรือไม่ ซึ่งเมื่อรวมกันแล้วจะได้ str2
การรวมสตริงย่อยหมายความว่าเราสามารถข้ามอักขระได้ แต่เราต้องรักษาลำดับของอักขระที่เลือกจาก str1
ตัวอย่างเช่น −
หากสตริงอินพุตเป็น −
const str1 = 'desxooajmepwele'; const str2 = 'example';
จากนั้นผลลัพธ์ควรเป็น −
const output = true;
เนื่องจากสตริง 'ตัวอย่าง' สามารถสร้างได้โดยการเลือกบางส่วนและจัดการลำดับของอักขระจาก str1
ตัวอย่าง
รหัสสำหรับสิ่งนี้จะเป็น −
const str1 = 'desxooajmepwele'; const str2 = 'example'; const containsString = (str1 = '', str2 = '') => { let [foundAt, next] = [0, 0]; for(const char of str2){ next = str1.slice(foundAt).indexOf(char); if (next === - 1){ return false; }; foundAt += next + 1; }; return true; }; console.log(containsString(str1, str2));
ผลลัพธ์
และผลลัพธ์ในคอนโซลจะเป็น −
true