রহস্যময়ী জাভাস্ক্রিপ্টঃ [] + [] খালি স্ট্রিং(’’) হচ্ছে কেনো?

আপনারা যদি কখনো ট্রাই করে থাকেন যে দুইটা খালি অ্যারের অ্যাডিশন(অথবা ক্লিয়ার বললে + ইউজ করলে) এর ফলাফল হয় খালি স্ট্রিং ''। এটা শুধুমাত্র দুইটা না, বরং যত ইচ্ছা খালি অ্যারে এরকম + দিতে অ্যাড করেন না কেন এটার ফলাফল সেই সেইম একই খালি স্ট্রিং '' দেখাবেঃ

[] + []
// ''

[] + [] + [] + [] + []
// '' 

এখানে মূল কারসাজি আসলে এই অ্যাডিশন + অপারেটরের। এই + অপারেটরের দুইটা অপারেন্ডের মাঝখানে বসলে কাজ হতে পারে দুইরকমঃ দুইটা নাম্বারের মধ্যে যোগ করা আর স্ট্রিং যুক্ত(String Concatenation) করা। এখানে আমরা যেহেতু দুইটা অ্যারের মাঝখানে বসিয়েছি আর অ্যারে আসলে নাম্বার না, তাই এখানে এই + অপারেটরটি টাইপ কোয়ারশনের সাহায্যে এদেরকে স্ট্রিং এ কনভার্ট করে তারপর সেটার ফলাফল দেখিয়েছে(ইকমাস্ক্রিপ্ট স্টান্ডার্ড অনুযায়ী)।

আমরা যদি এখন কথামতো দেখি যে একটা খালি অ্যারে[] কে স্ট্রিং এ কনভার্ট করলে কি হয়ঃ

String([])
// ''     

এ কারণেই খালি অ্যারে [] যতই যোগ করেন এখানে আসলে খালি স্ট্রিংই হচ্ছেঃ

[] + []
// ''

'' + ''
// ''

এবার তাহলে বলেন তো অ্যারেগুলো যদি খালি না হয়ে এরকম [1, 2] + [3, 4] হতো তাহলে এর ফলাফল কি হবে? আসুন প্রথমে এদেরকে নিয়ম অনুযায়ী স্ট্রিং এ কনভার্ট করে দেখিঃ

String([1, 2]) 
//'1,2'

String([3, 4])
//'3,4'

তো শেষ পর্যন্ত String Concatenation হয়ে হিসেব-নিকেশ দাড়াচ্ছে এরকমঃ

'1,2' + '3,4'
// '1,23,4'

সেজন্যেই [1, 2] + [3, 4] এর ফলাফল '1,23,4' হবে, [’Hello’, ‘World’] + [’Hello’, ‘Bangladesh’] এর ফলাফল হবে 'Hello,WorldHello,Bangladesh’ ইত্যাদি ইত্যাদি...

শেয়ার করুন

লেখাটি ভাল লাগলে সোশ্যাল মিডিয়ায় শেয়ার করুন। আপনার কলিগ, বন্ধু কিংবা প্রিয় কারও কাজে লাগতে পারে। জানেন তো, শেয়ারিং ইজ কেয়ারিং!

সাবস্ক্রিপশন সেন্টার

প্রতিদিন ওয়েবসাইটে আসা আপনার জন্য কষ্টকর হতে পারে। তাই যখনই আমি নতুন ব্লগ পোস্ট, সিরিজ, বই বা ভিডিও পাবলিশ করব,
তখনই তা আপনার ইমেইলে পেতে সাবস্ক্রাইব করুন। নো স্প্যামিং প্রমিজ!