เราจำเป็นต้องเขียนฟังก์ชัน 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