JavaScript-এ দুটি বা ততোধিক স্ট্রিং জয়েন করার পদ্ধতি শিখুন।
JavaScript-এ দুটি বা ততোধিক স্ট্রিং একসাথে জয়েন করার আলাদা আলাদা মেথড আছে, যার মধ্যে প্লাস অপারেটর +, প্লাস ইকুয়ালস += অপারেটর, এবং concat()।
নোট: + এবং += যেনে পরিচিত অ্যাসাইনমেন্ট অপারেটর।
আসুন তিনটিই ট্রাই করি!
প্লাস অপারেটর (+)
মান লইয়া আপনার দুটি ভেরিয়েবল আছে, firstName এবং lastName, এবং আপনি সেসব ভেরিয়েবলের কম্বাইনড ভ্যালু একটি তৃতীয় ভেরিয়েবল, fullName-এ অ্যাসাইন করতে চান। আপনি এটা নিচের মতো করতে পারেন:
const firstName = "Steve" const lastName = "Jobs" const fullName = firstName + lastName console.log(fullName) // SteveJobs সেপারেশন (স্পেস) যোগ করুন
fullName স্ট্রিং ভ্যালুটিকে আরও পড়তে সুবিধাজনক बनाने, স্টিভ এবং জবসের মাঝপথে একটি স্পেস যোগ করি। আগের কোডটি রিইউজ করি, কিন্তু এইবার একটি সেপারেটর যোগ করি + '' + এর মাঝপথে, নিচের মতো:
const firstName = "Steve" const lastName = "Jobs" const fullName = firstName + " " + lastName console.log(fullName) // Steve Jobs নোট: আপনি সেপারেটর "Steve " এর পরে বা " Jobs" এর আগে স্পেস যোগ করেও করতে পারেন কিন্তু এতে আপনার প্রজেক্টে firstName বা lastName ভেরিয়েবলগুলো ভিন্ন কনটেক্সটে ব্যবহার করার সময় অন্য ফরম্যাটিং সমস্যা হতে পারে। সুতরাং আমি সেই অ্যাপ্রোচ রিকমেন্ড করি না।
প্লাস ইকুয়ালস অপারেটর (+=)
যদি যেকোনো কারণে আপনি একটি নতুন ভেরিয়েবল (fullName) তৈরি করতে চান না, তবে আপনি lastName ভেরিয়েবলকে firstName-এ অ্যাসাইন করতে পারেন প্লাস ইকুয়ালস অপারেটর += ব্যবহার করে:
console.log((firstName += lastName)) // SteveJobs তবে, দেখতে পাচ্ছেন, আবার সেপারেটর দরকার। += অপারেটর দিয়ে একাধিক ভ্যালু যোগ করতে চাইলে আপনি মনে করতে পারেন এটি সম্ভব:
firstName += " " += lastName কিন্তু এটা আপনাকে এরর দেবে:
Uncaught SyntaxError: Invalid left-hand side in assignment বদলে আপনাকে ভ্যালুগুলো আলাদা লাইনে কম্বাইন করতে হবে। প্রথম সেপারেটর ভ্যালু firstName-এ অ্যাসাইন করুন, এবং তারপর lastName-কে firstName-এ অ্যাসাইন করুন:
let firstName = "Steve" let lastName = "Jobs" // প্রথমে সেপারেটর ভ্যালু অ্যাসাইন করুন firstName += " " // তারপর লাস্ট নেম অ্যাসাইন করুন firstName += lastName // রেজাল্ট: Steve Jobs concat() মেথড
আপনি JavaScript-এর concat() মেথড ব্যবহার করেও স্ট্রিং জয়েন করতে পারেন:
let firstName = "Steve" let lastName = "Jobs" const fullName = firstName.concat(lastName) console.log(fullName) // SteveJobs আবার সেপারেটর দরকার। concat()-এ এটি স্ট্রেটফরওয়ার্ড। শুধু একটি স্পেস স্ট্রিং এবং একটি কমা যোগ করুন, এবং তারপর lastName ভেরিয়েবল:
const fullName = firstName.concat(" ", lastName) console.log(fullName) // Steve Jobs স্ট্রিং জয়েন করার জন্য কোন মেথড ব্যবহার করা উচিত?
পারফরম্যান্স কারণોએ, Mozilla এবং অন্যান্য অনেক বিশ্বস্ত JS সোর্স দৃঢ়ভাবে রিকমেন্ড করে + বা += ব্যবহার করা যেখানেও সম্ভব।
যেমন এই JSPerf টেস্ট কেসে দেখানো হয়েছে, স্ট্রিং অবজেক্টের মত concat() JavaScript ইন্টারপ্রেটার (যেটি আপনার ব্রাউজারে রান করে) এর জন্য স্ট্রিং প্রিমিটিভের মত + এবং += চেয়ে অনেক ধীর:
