আমাদের একটি ফাংশন লিখতে হবে যা একটি স্ট্রিং kabul করবে এবং এর অ্যালফাবেট মিরর করবে। উদাহরণস্বরূপ -
যদি ইনপুট হয় 'abcd' তবে আউটপুট হবে 'zyxw'
ফাংশনটি প্রতিটি ক্যারেক্টার নিবে এবং সেটিকে সেটি থেকে (২৬ - N) অ্যালফাবেট দূরে ম্যাপ করবে, যেখানে N হলো সেই অ্যালফাবেটের ১-ভিত্তিক ইনডেক্স যেন ৫ for e এবং ১০ for j।
আমরা String.prototype.replace() মেথড ব্যবহার করব, সকল ইংরেজি অ্যালফাবেটকে কেস ইর্রেসপেক্টিভলি ম্যাচ করতে। পুরো ফাংশনের কোড হবে -
উদাহরণ
const str = 'ABCD'; const mirrorString = str => { const regex = /[A-Za-z]/g; return str.replace(regex, char => { const ascii = char.charCodeAt(); let start, end; if(ascii > 96){ start = 97; end = 122; } else { start = 65; end = 90; } return String.fromCharCode(end - (ascii-start)); }); } console.log(mirrorString(str)); console.log(mirrorString('Can we flip this as well')); console.log(mirrorString('SOME UPPERCASE STUFF'));আউটপুট
কনসোলে আউটপুট হবে -
ZYXW Xzm dv uork gsrh zh dvoo HLNV FKKVIXZHV HGFUU