समस्या
हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना आवश्यक है जो स्ट्रिंग्स की सरणी लेता है, एआर, पहले तर्क के रूप में और विशेष वर्णों की एक सरणी, शुरुआत, दूसरे तर्क के रूप में।
स्टार्टर सरणी में ऐसे वर्ण होते हैं जो एक टिप्पणी शुरू कर सकते हैं। हमारे फ़ंक्शन को सरणी गिरफ्तारी के माध्यम से पुनरावृति करनी चाहिए और स्ट्रिंग्स में निहित सभी टिप्पणियों को हटा देना चाहिए।
उदाहरण के लिए, यदि फ़ंक्शन का इनपुट है:
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,' ]