কম্পিউটার টিউটোরিয়াল

স্ট্রিংয়ে আপারকেস-লোয়ারকেস ফ্লিপ করা - JavaScript

স্ট্রিংয়ের সব বড় হাতের অক্ষরকে ছোট হাতের এবং ছোট হাতেরকে বড় হাতের করতে কনভার্ট করা।

উদাহরণ

Input:  'The Case OF tHis StrinG Will Be FLiPped'
Output: 'tHE cASE of ThIS sTRINg wILL bE flIpPED'

সমাধান ১: ASCII কোড ম্যানিপুলেশন

const flipCase = (str) => {
  let result = '';
  const CASE_DIFF = 32; // 'a' - 'A' = 32
  
  for (const char of str) {
    const code = char.charCodeAt(0);
    
    if (code >= 65 && code <= 90) {      // A-Z
      result += String.fromCharCode(code + CASE_DIFF);
    } else if (code >= 97 && code <= 122) { // a-z
      result += String.fromCharCode(code - CASE_DIFF);
    } else {
      result += char; // নন-অ্যালফাবেটিক অক্ষর অপরিবর্তিত
    }
  }
  
  return result;
};

সমাধান ২: বিল্ট-ইন মেথড (সুপারিশ করা)

const flipCaseBuiltIn = (str) => {
  return str.split('').map(char => {
    if (char === char.toUpperCase()) {
      return char.toLowerCase();
    } else {
      return char.toUpperCase();
    }
  }).join('');
};

// আরও সংক্ষিপ্ত
const flipCaseShort = (str) => 
  [...str].map(c => c === c.toUpperCase() ? c.toLowerCase() : c.toUpperCase()).join('');

তুলনা

পদ্ধতি প্রস কন্স
ASCII ম্যানিপুলেশন দ্রুত, কোনো লোকালে ইশ্যু নেই শুধু ASCII, ইউনিকোড সাপোর্ট করে না
toUpperCase/toLowerCase ইউনিকোড সাপোর্ট, রিডেবল কিছুটা স্লোয়ার, লোকালে সেনসিটিভ

টেস্ট

const str = 'The Case OF tHis StrinG Will Be FLiPped';
console.log(flipCase(str));
console.log(flipCaseBuiltIn(str));
// উভয়ই: tHE cASE of ThIS sTRINg wILL bE flIpPED

উৎপাদন

tHE cASE of ThIS sTRINg wILL bE flIpPED
  1. জাভাস্ক্রিপ্টে সংখ্যা এবং স্ট্রিং যোগ করলে কী হয়?

  2. জাভাস্ক্রিপ্টে স্ট্রিং-এর অক্ষর বড় হাতের (uppercase) কি ছোট হাতের (lowercase) কীভাবে জানবেন?

  3. ভ্যানিলা জাভাস্ক্রিপ্ট দিয়ে স্ট্রিং বড় ও ছোট হাতের অক্ষরে রূপান্তর

  4. জাভাস্ক্রিপ্টে TextDecoder এবং TextEncoder