স্ট্রিং এর দৈর্ঘ্য চিহ্নিত করা

TypeScript:
স্ট্রিং এর দৈর্ঘ্য চিহ্নিত করা

কিভাবে:

TypeScript-এ, আপনি একটি স্ট্রিংয়ের দৈর্ঘ্য .length প্রপার্টি ব্যবহার করে পেতে পারেন। এখানে একটি দ্রুত উদাহরণ দেওয়া হল:

let greeting: string = "Hello, TypeScript!";
console.log(greeting.length); // আউটপুট: 18

এই কোডটি greeting নামের একটি স্ট্রিং ভেরিয়েবল ঘোষণা করে এবং তারপর এর দৈর্ঘ্য কন্সোলে লগ করে।

গভীরে নিবেশ

.length প্রপার্টি হচ্ছে JavaScript থেকে আসা, TypeScript-এর পূর্বপুরুষ। এটি একটি সোজা এবং সর্বজনীনভাবে সমর্থিত একটি উপায় যা একটি স্ট্রিংয়ের আকার নির্ধারণ করে।

বিকল্প পদ্ধতি থাকলেও, সেগুলি সাধারণত জিনিসগুলিকে জটিল করে তোলে। উদাহরণস্বরূপ, আপনি স্ট্রিংটিকে একটি অ্যারেতে রূপান্তর করতে পারেন এবং উপাদানগুলি গণনা করতে পারেন:

let greetingArray: string[] = Array.from(greeting);
console.log(greetingArray.length); // আউটপুট: 18

কিন্তু দীর্ঘ পথে যাবার কি দরকার? .length প্রপার্টি দক্ষ কারণ স্ট্রিংগুলিকে মূলত অক্ষরের অ্যারে হিসাবে সঞ্চিত করা হয়, সুতরাং দৈর্ঘ্যের তথ্য সহজলভ্য।

এখন, ধরুন আপনি বিভিন্ন ভাষা থেকে স্ট্রিং নিয়ে কাজ করছেন। আপনি বিশেষ অক্ষরগুলোর সাথে সমস্যায় পড়তে পারেন। মৌলিক .length পদ্ধতি UTF-16 কোড ইউনিট গণনা করে, যা দুটি কোড ইউনিট প্রয়োজন হওয়া বর্ণগুলির জন্য, যা সারোগেট জোড়া হিসেবে পরিচিত, সমস্যাযুক্ত হতে পারে। এমন ক্ষেত্রে, .length প্রপার্টি আপনাকে আসল বর্ণগুলির, যা কোড পয়েন্ট নামে পরিচিত, গণনা দিতে পারে না।

এখানে আপনি সারোগেট জোড়াগুলি সহ স্ট্রিং কিভাবে হ্যান্ডেল করতে পারেন:

function countCodePoints(str: string): number {
    return Array.from(str).length;
}

let fancyGreeting: string = "Hello, 🌍!";
console.log(countCodePoints(fancyGreeting)); // আউটপুট: 9

এই ফাংশনটি স্ট্রিং এনকোডিংয়ের জটিলতা নিয়ে কাজ করে নিশ্চিত করে যে, প্রতিটি বর্ণ, একক বা দ্বৈত কোড ইউনিট নির্বিশেষে, সঠিকভাবে গণনা করা হয়।

আরও দেখুন