SATT ACADEMY

New to Satt Academy? Create an account


or

Log in with Google Account

Academy
Please, contribute to add content into জাভাস্ক্রিপ্ট কন্ট্রোল স্টেটমেন্ট (JS Control Statement).
Content

জাভাস্ক্রিপ্ট বুলিয়ান নিচের দুইটি ভ্যালুর যেকোন একটি প্রদর্শন করেঃ true অথবা false


বুলিয়ান ভ্যালু

প্রোগ্রামিং-এ আপনার এমন একটি ডাটা টাইপ দরকার হবে যেখানে শুধুমাত্র নিচের যেকোন একটি ভ্যালুর প্রয়োজন হবে, যেমনঃ

  • YES / NO
  • ON / OFF
  • TRUE / FALSE

এই কারনে, জাভাস্ক্রিপ্টের একটি বুলিয়ান ডাটা টাইপ আছে। এটি শুধুমাত্র true অথবা false ভ্যালু ধারণ করে।


Boolean() ফাংশন

একটি এক্সপ্রেশন সত্য কিনা যাচাই করার জন্য আপনি Boolean() ব্যবহার করতে পারেনঃ

shot

আরো সহজভাবেঃ

sh9ot

কম্প্যারিজন এবং কন্ডিশন অপারেটর

জাভাস্ক্রিপ্ট কম্প্যারিজন অধ্যায়ে কম্প্যারিজন অপারেটর সম্পর্কে সম্পূর্ণ আলোচনা করা হয়েছে।

জাভাস্ক্রিপ্ট কন্ডিশন বা শর্ত পরিচ্ছেদে কন্ডিশনাল স্ট্যাটমেন্ট সম্পর্কে সম্পূর্ণ আলোচনা করা হয়েছে।

উদাহরণঃ

অপারেটরবর্ণনাউদাহরণ
==equal to(সমান)if (day == "Monday")
>greater than(বড়)if (salary > 9000)
<less than(ছোট)if (age < 18)

সকল সত্যিকারের ভ্যালু হবে True

sh9ot

সত্যিকার নম্বর ছাড়া সকল কিছুর ভ্যালু হবে False

kt_satt_skill_example_id=684

kt_satt_skill_example_id=687

kt_satt_skill_example_id=690

kt_satt_skill_example_id=691

kt_satt_skill_example_id=692

kt_satt_skill_example_id=694

বুলিয়ান প্রোপার্টি এবং মেথড

true এবং false এর মত মৌলিক ভ্যালুর প্রোপার্টি এবং মেথড থাকে না(কারন তারা অবজেক্ট না)।

কিন্তু জাভাস্ক্রিপ্টে, মৌলিক ভ্যালুতে মেথড এবং প্রোপার্টি থাকে কারন যখন মেথড এবং প্রোপার্টি এক্সিকিউটিং হয় তখন জাভাস্ক্রিপ্ট মৌলিক ভ্যালুকে অবজেক্ট হিসেবে বিবেচনা করে।


সম্পূর্ণ বুলিয়ান রেফারেন্স

সম্পূর্ণ বুলিয়ান রেফারেন্সের জন্য আমাদের সম্পূর্ণ জাভাস্ক্রিপ্ট বুলিয়ান রেফারেন্স পড়ুন।

Content added By

true অথবা false যাচাই করার জন্য কম্প্যারিজন এবং লজিক্যাল অপারেটর ব্যবহার করা হয়।


কম্প্যারিজন অপারেটর

কম্প্যারিজন অপারেটর ভ্যারিয়েবল এবং ভ্যালুর মধ্যে সাদৃশ্য অথবা পার্থক্য নির্ধারন করার জন্য ব্যবহার করা হয়।

দেওয়া আছে x = 5, নিম্নোক্ত টেবিলে কম্প্যারিজন অপারেটর ব্যাখ্যা করা হয়েছেঃ

অপারেটরবর্ণনাতুলনারিটার্ন করে
==সমানx == 8false
x == 5true
x == "5"true
===একই ভ্যালু এবং একই টাইপx === 5true
x === "5"false
!=সমান নয়x != 8true
!==ভ্যালু সমান নয় এবং টাইপ একই নয়x !== 5false
x !== "5"true
x !== 8true
>বড়x > 8false
<ছোটx < 8true
>=বড় অথবা সমানx >= 8false
<=ছোট অথবা সমানx <= 8true

যেভাবে ব্যবহার করবেন

কন্ডিশনাল স্টেটমেন্টে কম্প্যারিজন অপারেটর ব্যবহার করে ভ্যালুর তুলনা করা হয় এবং ফলাফলের উপর নির্ভর করে পরবর্তী কার্যক্রম নির্ধারন করা হয়ঃ

kt_satt_skill_example_id=709

কন্ডিশনাল স্টেটমেন্ট সম্পর্কে পরবর্তী পরিচ্ছেদে আরো শিখতে পারবেন।


লজিক্যাল অপারেটর

লজিক্যাল অপারেটর ভ্যারিয়েবল এবং ভ্যালুর মধ্যে লজিক নির্ধারন করে।

দেওয়া আছে x = 6 এবং y = 3, নিম্নোক্ত টেবিলে লজিক্যাল অপারেটর সম্পর্কে ব্যাখ্যা করা হয়েছেঃ

অপারেটরবর্ণনাউদাহরণ
&&এবং(x < 10 && y > 1) true রিটার্ন করে
||অথবা(x == 5 || y == 5) false রিটার্ন করে
!না!(x == y) true রিটার্ন করে

কন্ডিশনাল(Ternary) অপারেটর

জাভাস্ক্রিপ্টে একটি কন্ডিশনাল অপারেটর রয়েছে যা শর্তের উপর ভিত্তি করে ভ্যারিয়েবলে ভ্যালু এসাইন করে।

গঠনপ্রণালী

kt_satt_skill_example_id=713

kt_satt_skill_example_id=717

যদি ভ্যারিয়েবল age এর ভ্যালু 18 এর নিচে হয় তাহলে ভ্যারিয়েবলের ভ্যালু হবে "Can not drive" অন্যথায় ভ্যারিয়েবলের ভ্যালু হবে "Can drive" ।


বিভিন্ন টাইপের মধ্যে তুলনা

বিভিন্ন টাইপের ডাটার মধ্যে তুলনা করলে অপ্রত্যাশিত ফলাফল দেখাতে পারে।

স্ট্রিংকে একটি নম্বরের সাথে তুলনা করলে জাভাস্ক্রিপ্ট একটি স্ট্রিংকে নম্বরে রুপান্তর করে। এম্পটি স্ট্রিং 0 তে রুপান্তর হয়। একটি টেক্সট স্ট্রিং "NaN" এ রুপান্তর হয় যা সব সময় false হয়।

উদাহরণভ্যালু
2 < 12true
2 < "12"true
2 < "Azizur"false
2 > "Rahman"false
2 == "Azizur"false
"2" < "12"false
"2" > "12"true
"2" == "12"false

যখন দুইটি স্ট্রিংকে তুলনা করা হয়, তখন "2" চেয়ে "12" ছোট হবে। কারন বর্ণানুক্রমে 2 এর চেয়ে 1 ছোট।

একটি সঠিক ফলাফলের জন্য, ভ্যারিয়েবলকে তুলনা করার আগে একটি সঠিক টাইপে রুপান্তর করতে হবেঃ

kt_satt_skill_example_id=719

জাভাস্ক্রিপ্ট বিটওয়াইজ অপারেটর

বিট অপারেটর ৩2-বিট নম্বরে কাজ করে।

যেকোনো নিউমেরিক অপারেন্ডকে ৩2-বিট নম্বরে রুপান্তর হয়।

এই ফলাফল জাভাস্ক্রিপ্ট নম্বরে রুপান্তর হয়।

অপারটরবর্ণনাউদাহরণএর মতফলাফলডেসিমাল
&ANDx = 5 & 10101 & 000100011
|ORx = 5 | 10101 | 000101015
~NOTx = ~ 5 ~0101101010
^XORx = 5 ^ 10101 ^ 000101004
<<Left shiftx = 5 << 10101 << 1101010
>>Right shiftx = 5 >> 10101 >> 100102

উপরের টেবিল ৪ বিট unsigned উদাহরণ ব্যবহার করেছে। কিন্তু জাভাস্ক্রিপ্ট ৩2-বিট নম্বর ব্যবহার করে।
এই কারনে জাভাস্ক্রিপ্ট, ~ ৫ কে 1০ রিটার্ন করে না এটি -৬ রিটার্ন করেঃ
~00000000000000000000000000000101 এর রিটার্ন হবে 11111111111111111111111111111010

kt_satt_skill_example_id=721

kt_satt_skill_example_id=724

kt_satt_skill_example_id=726

kt_satt_skill_example_id=727

kt_satt_skill_example_id=729

Content added By

কন্ডিশনাল স্টেটমেন্ট বিভিন্ন শর্তের উপর ভিত্তি করে বিভিন্ন কার্য সম্পাদন করে।


কন্ডিশনাল স্টেটমেন্ট

কোড লিখার সময় আপনি মাঝে মাঝে বিভিন্ন সিদ্ধান্তের উপর বিভিন্ন কার্য সম্পাদন করতে চাইবেন।

এটা করার জন্য আপনি আপনার কোডে কন্ডিশনাল স্টেটমেন্ট ব্যবহার করতে পারেন।

জাভাস্ক্রিপ্টে নিম্নোক্ত কন্ডিশনাল স্টেটমেন্ট আছেঃ

  • if-এর শর্ত true হলে ব্লকের কোড সম্পাদন হবে।
  • যদি একই শর্ত false হয় তখন else এর মধ্যে থাকা কোড এক্সিকিউট হবে।
  • যদি প্রথম শর্ত false হয় তাহলে নতুন শর্ত টেস্ট করার জন্য else if ব্যবহার করুন।
  • যখন এক্সিকিউশনের জন্য বিকল্প অনেক কোড নির্দেশ করতে তখন switch ব্যবহার করুন।

if স্টেটমেন্ট

if-এর শর্ত যদি true হয় তাহলে ব্লকের মধ্যে জাভাস্ক্রিপ্ট কোড এক্সিকিউট হবে।

গঠনপ্রণালী

kt_satt_skill_example_id=733

if লেখাটি ছোট হাতের লিখতে হবে। বড় হাতের(If অথবা IF) লিখলে জাভাস্ক্রিপ্ট ভুল দেখাবে।

উদাহরণ

যদি সময় 18:00(সন্ধ্যা ০৬ টা) এর নিচে হয় তাহলে "Good day" শুভেচ্ছা জানাবেঃ

kt_satt_skill_example_id=734

else স্টেটমেন্ট

যদি শর্ত false হয় তাহলে else এর মধ্যে থাকা কোড এক্সিকিউট হয়।

kt_satt_skill_example_id=735

kt_satt_skill_example_id=737

else if  স্টেটমেন্ট

যদি প্রথম শর্ত false হয় তাহলে শর্ত যোগ করার জন্য else if স্টেটমেন্ট ব্যবহার হয়।

গঠনপ্রণালী

kt_satt_skill_example_id=739

kt_satt_skill_example_id=740

 

Content added By

ভিন্ন ভিন্ন শর্তের উপর ভিত্তি করে ভিন্ন ভিন্ন কার্য সম্পাদনের জন্য Switch স্টেটমেন্ট ব্যবহার করা হয়।


জাভাস্ক্রিপ্ট Switch স্টেটমেন্ট

অনেকগুলো কোডের ব্লক থেকে এক্সিকিউট করার জন্য একটিকে নির্বাচন করতে Switch স্টেটমেন্ট ব্যবহার করা হয়।

গঠনপ্রণালী

kt_satt_skill_example_id=741

কাজের প্রক্রিয়াঃ

  • এখানে Switch এক্সপ্রেশন একবার মূল্যায়ন করা হয় ।
  • এক্সপ্রেশনের ভ্যালুকে প্রত্যেকটি case এর ভ্যালুর সাথে তুলনা করা হয়।
  • যদি কোন একটির সাথে মিলে যায় তাহলে ঐ case এর ব্লকটি এক্সিকিউট হবে।

getDay() ব্যবহার করে আমরা সাপ্তাহিক দিনকে নম্বরে(0-6 পর্যন্ত) পেতে পারি।(Sunday=0, Monday=1, Tuesday=2...)

আমরা এই নম্বরকে দিনের নাম পাওয়ার জন্য ব্যবহার করতে পারিঃ

kt_satt_skill_example_id=742

break কিওয়ার্ড

যখন জাভাস্ক্রিপ্ট break কি-ওয়ার্ডে পৌছাবে, তখন switch ব্লকটি কাজ করা বন্ধ করে দিবে।

ইহা অন্য কোন Case কে যাচাই করবেনা এবং অতিরিক্ত কোন কোডও এক্সিকিউট করবে না।

যখনই মিল খুজে পাবে তখনি তার কাজ সম্পন্ন হয়ে যাবে এবং এক্সিকিউশন বন্ধ করে দিবে। পরবর্তী কোন case কে যাচাই করবে না।

Break ব্যবহারে এক্সিকিউশনের সময় অনেক কমে যায় কারন যেখানে মিল খুজে পাবে তারপরই এক্সিকিউশন বন্ধ করে দিবে।

Switch ব্লকের সর্বশেষ case-এর break নেওয়ার প্রয়োজন নেই কারণ ব্লক এখানে এমনিতেই বন্ধ হয়ে যাবে।


ডিফল্ট কিওয়ার্ড

default কিওয়ার্ডের মাধ্যমে আমরা কোড রান করাতে পারি যদি কোন case এর সাথে মিল না পাওয়া যায়ঃ


 

getDay() ব্যবহার করে আমরা সাপ্তাহিক দিনকে নম্বরে(0-6 পর্যন্ত) পেতে পারি।

যদি আজকের দিনটি শনিবার(6) অথবা রবিবার(0) না হয় তবে একটি ডিফল্ট মেসেজ দেখাবেঃ

kt_satt_skill_example_id=743

মাঝে মাঝে আপনি একটি switch ব্লকে বিভিন্ন case-এ একই কোড ব্যবহার করতে চাইবেন অথবা একটি সাধারণ ডিফল্টে থেমে যেতে চাইবেন।

নিচের উদাহরণে দেখুন ভিন্ন ভিন্ন case একই code এর ব্লক ব্যবহার করতে পারে এবং ডিফল্ট case টি Switch ব্লকের সর্বশেষ case হওয়ারও প্রয়োজন নেইঃ

kt_satt_skill_example_id=744

যদি ডিফল্ট case টি Switch ব্লকের সর্বশেষ case না হয় তবে break দিয়ে শেষ হবে।

Content added By

লুপের মাধ্যমে একগুচ্ছ কোডকে একাধিকবার এক্সিকিউট করানো যায়।


জাভাস্ক্রিপ্ট লুপ

যদি আপনি একই কোড বহুবার রান করিয়ে প্রত্যেকবার ভিন্ন ভিন্ন ভ্যালু পেতে চান তাহলে লুপ সবচেয়ে সুবিধাজনক পদ্ধতি।

আপনি অ্যারে ব্যবহার করলে অধিকাংশ সময় লুপ ব্যবহার করবেনঃ

kt_satt_skill_example_id=748

আপনি এই কোড লিখতে পারেনঃ

kt_satt_skill_example_id=750

লুপের ধরণ

জাভাস্ক্রিপ্টে বিভিন্ন ধরনের লুপ সাপোর্ট করেঃ

  • for - একগুচ্ছ কোডকে একাধিকবার রান করানো যায়
  • for/in - অবজেক্টের প্রোপার্টির মধ্যে লুপ করে
  • while - যতক্ষন পর্যন্ত একটি নির্দেশিত শর্ত true হবে ততক্ষন পর্যন্ত কোড রান হবে
  • do/while - এটিও while লুপের মত একটি নির্দেশিত শর্ত যতক্ষন true হবে ততক্ষন পর্যন্ত কোড রান হবে

For লুপ

লুপ ব্যবহার করতে চাইলে আপনি প্রথমেই একটি for লুপ ব্যবহার করার চিন্তা করবেন।

for লুপের গঠনপ্রণালীঃ

kt_satt_skill_example_id=751

statement 1 লুপ(কোড এক্সিকিউট হওয়ার) শুরু হওয়ার পূর্বে এক্সিকিউট হয়।

statement 2 লুপের(কোড এক্সিকিউট হওয়ার) শর্ত নির্ধারন করে।

statement 3 প্রতিবার লুপ(কোড এক্সিকিউট হওয়ার) এক্সিকিউট হওয়ার পর ইহা এক্সিকিউট হয়।

kt_satt_skill_example_id=753

উপরোক্ত উদাহরণ থেকেঃ

লুপ শুরু হওয়ার পূর্বে statement 1 একটি ভ্যারিয়েবল(var i = 0) সেট করে।

লুপের জন্য statement 2 শর্ত(i অবশ্যই 4 থেকে ছোট হতে হবে) নির্ধারন করে।

প্রতিবার লুপ এক্সিকিউট হওয়ার পর statement 3(i ++) এক করে মান বৃদ্ধি করে।


statement 1

সাধারণত আপনি লুপের মধ্যে ব্যবহৃত ভ্যারিয়েবলকে(i = 0) ডিক্লেয়ার করার জন্য statement 1 ব্যবহার করবেন।

জাভাস্ক্রিপ্টে এটা গুরুত্বপূর্ন না। এখানে statement 1 ঐচ্ছিক।

আপনি statement 1 এর মধ্যে (কমা দিয়ে আলাদা করে ) অনেকগুলো ভ্যালু ব্যবহার করতে পারেনঃ

kt_satt_skill_example_id=755

এবং আপনি statement 1 কে না দিলেও পারেন(যদি তা আগেই ডিক্লেয়ার করা থাকে)।

kt_satt_skill_example_id=757

statement 2

statement 2 সাধারণত ইনিশিয়াল ভ্যারিয়েবলের শর্ত যাচাই করার জন্য ব্যবহার করা হয়।

জাভাস্ক্রিপ্টে statement 2 ঐচ্ছিক।

statement 2 যদি true হয় তবে লুপ আবার শুরু হবে কিন্তু যদি এটি false হয় তবে লুপ এখানেই শেষ হয়ে যাবে।

যদি আপনি statement 2 না দেন তবে আপনাকে অবশ্যই লুপের ভিতর break দিতে হবে। অন্যথায় লুপ কখনোই শেষ হবে না এবং আপনার ব্রাউজার বন্ধ হয়ে যাবে। পরবর্তী পরিচ্ছেদে আপনি Break সম্পর্কে আরো শিখতে পারবেন।


statement 3

সাধারণত statement 3 ইনিশিয়াল ভ্যারিয়েবলের মান বৃদ্ধি করে।

জাভাস্ক্রিপ্টে statement 3 ও ঐচ্ছিক।

statement 3 যেকোন কিছু করতে পারে যেমন ইনক্রিমেন্ট(i = i + 15), ডিক্রিমেন্ট(i--) অথবা অন্যকিছু।

statement 3 বাদ দেওয়া যেতে পারে(যদি আপনি লুপের ভিতর ভ্যালুকে ইনক্রিমেন্ট করেন)

kt_satt_skill_example_id=758

For/In লুপ

জাভাস্ক্রিপ্টে for/in স্টেটমেন্ট একটি অবজেক্টের প্রোপার্টির মধ্যে লুপ করার জন্য ব্যবহার করা হয়ঃ

kt_satt_skill_example_id=760

Content added || updated By
Please, contribute to add content into জাভাস্ক্রিপ্ট ফর ইন লুপ (JS For ... In Loop)).
Content
Please, contribute to add content into জাভাস্ক্রিপ্ট ফর অফ লুপ (JS For ... Of Loop).
Content

লুপ হচ্ছে একগুচ্ছ কোড যা নির্ধারিত শর্ত যতক্ষণ true থাকবে ততক্ষণ এক্সিকিউট হবে।


while লুপ

while লুপ ততক্ষণ পর্যন্ত লুপ করতে থাকবে যতক্ষণ পর্যন্ত তার নির্ধারিত শর্ত true থাকে।

গঠনপ্রণালী

kt_satt_skill_example_id=768

এখানে যতক্ষণ পর্যন্ত ভ্যারিয়েবল i এর মান 7 থেকে ছোট হবে ততক্ষণ কোডটি রান হবেঃ

kt_satt_skill_example_id=771

যদি আপনি ভ্যারিয়েবল i এর মান বৃদ্ধি না করেন তাহলে আপনার ব্রাউজার বন্ধ হয়ে যাবে কারণ লুপটি কখনোই থামবে না।


do/while লুপ

do/while লুপ হচ্ছে while লুপের ভিন্ন রূপ। এটি শর্ত যাচাই করার পূর্বে কোড একবার রান করে এবং শর্তটি যতক্ষন পর্যন্ত true থাকে ততক্ষণ পর্যন্ত রান করে।

গঠনপ্রণালী

kt_satt_skill_example_id=771

নিচের উদাহরণে do/while লুপ ব্যবহার করা হয়েছে। এখানে শর্ত যাচাইয়ের পূর্বে কোডকে অন্তত একবার রান করানো হয়ঃ

kt_satt_skill_example_id=773

ভ্যারিয়েবলের ভ্যালু বৃদ্ধি করতে ভুলে যাবেন না,নয়তো লুপ কখনোই বন্ধ হবে না।


for এবং while এর মধ্যে সাদৃশ্যতা

পূর্ববর্তী পরিচ্ছেদে আপনি for লুপ সম্পর্কে পড়েছেন এবং বুঝতে পারতেছে for এবং while লুপ একই রকম যদি আমরা for লুপের statement 1 এবং statement 2 না দেই।

এই উদাহরণে animals অ্যারে থেকে প্রানীর নাম নেওয়ার জন্য আমরা for লুপ ব্যবহার করেছিঃ

kt_satt_skill_example_id=774

এই উদাহরণে animals অ্যারে থেকে প্রানীর নাম নেওয়ার জন্য আমরা while লুপ ব্যবহার করেছিঃ

kt_satt_skill_example_id=775

Content added By

Break স্টেটমেন্ট

এই টিউটোরিয়ালের পূর্ববর্তী পরিচ্ছেদে break স্টেটমেন্টের ব্যবহার দেখানো হয়েছিল। switch স্টেটমেন্ট থেকে বের হয়ে যাওয়ার জন্য ইহা ব্যবহার করা হয়েছিল।

একটি লুপ থেকে বের হয়ে যাওয়ার জন্যও break স্টেটমেন্ট ব্যবহার করা হয়।

break স্টেটমেন্ট লুপকে বন্ধ করে দেয় এবং পরবর্তী কোন কোড থাকলে তা এক্সিকিউট করেঃ

kt_satt_skill_example_id=781

continue স্টেটমেন্ট

যদি একটি নির্দিষ্ট শর্ত ঘটে তাহলে continue স্টেটমেন্ট লুপের ঐ ধাপকে বাদ দিয়ে পরবর্তী ধাপে চলে যায়।

এই উদাহরণটিতে 4 এর মান এড়িয়ে যায়ঃ

kt_satt_skill_example_id=783

জাভাস্ক্রিপ্ট লেবেল

জাভাস্ক্রিপ্ট স্টেটমেন্টকে নাম দেওয়ার জন্য স্টেটমেন্টের পূর্বে লেবেলের নাম এবং কোলন ব্যবহার করতে হবেঃ

kt_satt_skill_example_id=785

জাভাস্ক্রিপ্টে break ও continue স্টেটমেন্ট শুধুমাত্র জাভাস্ক্রিপ্ট কোডের ব্লক থেকে বের হয়ে আসতে পারে।

গঠনপ্রণালীঃ

kt_satt_skill_example_id=787

continue স্টেটমেন্টের(লেবেলসহ অথবা ছাড়া) মাধ্যমে লুপের একটি ধাপকে এড়িয়ে যাওয়ার জন্য ব্যবহার করা হয়।

একটি লুপ বা switch স্টেটমেন্ট থেকে বের হয়ে আসার জন্য লেবেল রেফারেন্স ছাড়া একটি break স্টেটমেন্ট ব্যবহার করা হয়।

যে কোন কোডের ব্লক থেকে বের হয়ে যাওয়ার জন্য একটি লেবেল রেফারেন্স দিয়ে break স্টেটমেন্ট ব্যবহার করা হয়ঃ

kt_satt_skill_example_id=790

Content added By
Please, contribute to add content into জাভাস্ক্রিপ্ট ইটারেবল (JS Iterable).
Content