জাভাস্ক্রিপ্টঃ স্টেটমেন্ট আর এক্সপ্রেশন

আমি আমার অনেক পর্বে স্টেটমেন্ট আর এক্সপ্রেশন এই দুইটা শব্দ অনেক ইউজ করেছি বা হয়তো অনেক জায়গায় দেখে থাকবেন এই দুইটা জিনিস। আজকে আমি শুধুমাত্র এই দুইটা নিয়েই কথা বলবো।

আমাদের কোডে মাঝেমধ্যে কিছু লাইন ভ্যালু প্রডিউস করে। যেমন ১০ + ১০ সমান ২০ হয়। আবার কিছু কোড আছে যেগুলো শুধুমাত্র অ্যাকশন নেয়। যেমন কন্ডিশনাল স্ট্যাটমেন্টগুলো। এগুলো কোনো ভ্যালু প্রডিউস করে না, জাস্ট কিছু নির্দিষ্ট কিছু অ্যাকশন নেয়। এগুলোর উপর ভিত্তি করেই আমরা স্ট্যাটমেন্ট আর এক্সপ্রেশনকে পার্থক্য করে থাকি। সোজা বাংলায় এক্সপ্রেশন ভ্যালু প্রডিউস করে আর স্ট্যাটমেন্ট শুধুমাত্র অ্যাকশন নেয়।

এক্সপ্রেশনঃ

নিচের উদাহরণে ১০ যোগ ১০ করে একটা ভ্যারিয়েবলে স্টোর করা হয়েছে। এখানে ভ্যালু প্রডিউস হয়েছে যেহেতু তাই এটা এক্সপ্রেশনঃ

var a = 10 + 10;

এক্সপ্রেশন সাধারণত এক লাইনের কোড হয়। পাশাপাশি আরো অনেক কিছু অ্যাড করা যেতে পারে, কিন্তু দিন শেষে একটা একটা ভ্যালু সে প্রডিউস করবেই। নিচের উদাহরণগুটাও এক্সপ্রেশনঃ

var fullName = 'Zonayed' + ' ' + 'Ahmed';

আরো উদাহরনঃ

2 + 2
3 * 7
1 + 2 + 3 * (8 ** 9) - Math.sqrt(4.0)
Math.min(2, 22)
Math.max(3, 94)
Math.round(81.5)
'Zonayed'
'Ahmed'
'Zonayed' + 'Ahmed'
null
true
talse
2
3
4.0

স্ট্যাটমেন্টঃ

আর অন্যদিকে স্ট্যাটমেন্ট জাস্ট কিছু অ্যাকশন নিবে। যেমন লুপ, কন্ডিশনাল স্ট্যাটমেন্টসহ আরো অনেক কিছুঃ

if(10 < 20) {
   console.log('Yeah! It is true');
} else {
   console.log('No! It is not True');
}

উপরের এটা জাস্ট অ্যাকশন নিচ্ছে। ভিতরে থাকা এক্সপ্রেশন অনুযায়ী, সত্য না মিথ্যা হবে সেটার উপর ভিত্তি করে পার্টিকুলার পার্ট প্রিন্ট করছে। সেইমভাবে অন্য সবগুলোওঃ

for(expressions) {
   //Some Code here
}

do {
   //Some code here
}

while(expression);while(expression) {
   //Some code here
}

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

বিভিন্নরকম ফাংশনঃ

আমরা জানি ফাংশনকেও ভ্যারিয়েবলে স্টোর করা যায়। এখন ফাংশনকে যদি ভ্যারিয়েবলে স্টোর করি তাহলে সেটা কি হবে? এক্সপ্রেশন নাকি স্ট্যাটমেন্ট? হ্যা আমার কথামতো সেটা এক্সপ্রেশনই হবে।

ফাংশন এক্সপ্রেশনঃ

এভাবে ফাংশন নিয়ে সেটা কোনো ভ্যারিয়েবলে স্টোর করলে সেটা ফাংশন এক্সপ্রেশন হবেঃ

var someFunc = function(params) {
   //Some code here
}

ফাংশন স্ট্যাটমেন্টঃ

আর নরমালভাবে ফাংশন নিলে সেটা ফাংশন স্ট্যাটমেন্ট হবেঃ

function sumFunc(params) {
   //Some Code here
}

আশা করি এবার স্ট্যাটমেন্ট আর এক্সপ্রেশন এই দুইটা ব্যাপার একদম ক্লিয়ার হয়ে গেছে। আজকে এই পর্যন্তই।

শেয়ার করুন

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

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

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