ปัญหา
เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ของสตริง arr เป็นอาร์กิวเมนต์แรก และอาร์เรย์ของอักขระพิเศษ สตาร์ทเตอร์ เป็นอาร์กิวเมนต์ที่สอง
อาร์เรย์เริ่มต้นประกอบด้วยอักขระที่สามารถเริ่มความคิดเห็นได้ ฟังก์ชันของเราควรทำซ้ำผ่านอาร์เรย์ arr และลบความคิดเห็นทั้งหมดที่อยู่ในสตริงออก
ตัวอย่างเช่น หากอินพุตของฟังก์ชันคือ:
const arr = [ 'red, green !blue', 'jasmine, #pink, cyan' ]; const starters = ['!', '#'];
จากนั้นผลลัพธ์ควรเป็น −
const output= [ 'red, green', 'jasmine,' ];
ตัวอย่าง
ต่อไปนี้เป็นรหัส -
const arr = [ 'red, green !blue', 'jasmine, #pink, cyan' ]; const starters = ['!', '#']; const removeComments = (arr = [], starters = []) => { const res = []; for(let i = 0; i < arr.length; i++){ let str = '' let flag = true for (let x of arr[i]) { if (starters.includes(x)) { flag = false str = str.replace(/\s+$/, '') } else if (x === '\n') { flag = true } if (flag) str += x }; res.push(str); } return res; }; console.log(removeComments(arr, starters));
ผลลัพธ์
ต่อไปนี้เป็นเอาต์พุตคอนโซล -
[ 'red, green', 'jasmine,' ]