JavaScript এর হাতেখড়ি (পর্ব – ৩)

JavaScript Part 3

আগের পর্বে আমরা Variable ও Data Type শিখেছি। আজকে শিখবো Operator — এগুলো দিয়ে আমরা মান নিয়ে হিসাব করি, তুলনা করি, এবং একাধিক শর্ত একসাথে মেলাই। পরের পর্বে (Condition) এই Operator গুলোই কাজে লাগবে।

Arithmetic Operator — গাণিতিক হিসাব

console.log(5 + 3);  // 8   যোগ
console.log(5 - 3);  // 2   বিয়োগ
console.log(5 * 3);  // 15  গুণ
console.log(5 / 3);  // 1.666...  ভাগ
console.log(5 % 3);  // 2   ভাগশেষ (modulus)
console.log(5 ** 2); // 25  power (৫ এর বর্গ)

% (modulus) একটু নতুন লাগতে পারে — এটা ভাগ করার পর যা অবশিষ্ট থাকে সেটা দেয়। এটা খুব কাজে লাগে, যেমন কোনো সংখ্যা জোড় না বিজোড় চেক করতে (num % 2 === 0 হলে জোড়)।

Assignment Operator — মান বসানো

let score = 10;

score += 5;  // score = score + 5  → 15
score -= 3;  // score = score - 3  → 12
score *= 2;  // score = score * 2  → 24
score /= 4;  // score = score / 4  → 6

এই শর্টহ্যান্ডগুলো খুব কমন — বিশেষ করে += কাউন্টার বা স্কোর বাড়ানোর সময় প্রায় সবসময় ব্যবহার হয়।

Comparison Operator — তুলনা করা

দুইটা মান তুলনা করে true বা false রিটার্ন করে:

Operator কাজ
== মান সমান কিনা (type চেক করে না)
=== মান ও type দুটোই সমান কিনা
!= / !== সমান না কিনা (loose / strict)
> / < বড় / ছোট
>= / <= বড় বা সমান / ছোট বা সমান

== vs === — এই পার্থক্যটা জরুরি

এটা JavaScript-এর সবচেয়ে কমন একটা confusion পয়েন্ট, তাই একটু বিস্তারিত দেখি:

console.log(5 == "5");   // true  — শুধু মান দেখে, type ইগনোর করে
console.log(5 === "5");  // false — মান একই কিন্তু type ভিন্ন (number vs string)

console.log(5 == 5);     // true
console.log(5 === 5);    // true — মান ও type দুটোই মিলে গেছে

এখানে 5 একটা number, আর "5" একটা string। == এদের সমান ধরে নেয় কারণ এটা শুধু মান দেখে, type ইগনোর করে। কিন্তু === type-ও চেক করে, তাই এদের ভিন্ন ধরে।

টিপস: প্রায় সবসময় === (triple equals) ব্যবহার করা উচিত, == না। ==-এর অপ্রত্যাশিত আচরণ (যেমন type জোর করে মিলিয়ে দেওয়া) অনেক bug-এর কারণ হয়। এটা professional JavaScript coding-এর একটা basic নিয়ম।

Logical Operator — একাধিক শর্ত মেলানো

Operator নাম কাজ
&& AND দুইটাই true হলে true
|| OR যেকোনো একটা true হলেই true
! NOT উল্টো করে দেয় (true হলে false)
let age = 20;
let hasID = true;

console.log(age >= 18 && hasID);  // true — দুইটাই সত্যি
console.log(age < 18 || hasID);   // true — অন্তত একটা সত্যি
console.log(!hasID);              // false — hasID এর উল্টো

একটা বাস্তব উদাহরণ — "ভোট দেওয়ার যোগ্যতা" চেক করা: বয়স ১৮ বা তার বেশি এবং ভোটার আইডি থাকতে হবে:

let canVote = age >= 18 && hasID;
console.log(canVote); // true

Increment ও Decrement

একটা number-কে ১ বাড়ানো/কমানোর জন্য শর্টহ্যান্ড আছে — কাউন্টার বা loop-এ এটা খুব বেশি ব্যবহার হয় (পরের পর্বে Loop-এ দেখবো):

let count = 5;

count++; // count = count + 1  → 6
count--; // count = count - 1  → 5

একটা সম্পূর্ণ উদাহরণ

<!DOCTYPE html>
<html lang="bn">
<head>
  <meta charset="UTF-8">
  <title>Operator উদাহরণ</title>
</head>
<body>
  <script>
    let price = 500;
    let quantity = 3;
    let total = price * quantity;

    console.log(`মোট দাম: ${total} টাকা`);

    let hasDiscount = total > 1000;
    console.log(`ডিসকাউন্ট পাবে: ${hasDiscount}`);

    let age = 22;
    let hasID = true;
    let canVote = age >= 18 && hasID;
    console.log(`ভোট দিতে পারবে: ${canVote}`);
  </script>
</body>
</html>

নিজে চেষ্টা করো

Exercise:

  1. দুইটা number variable বানাও, তাদের যোগ, বিয়োগ, গুণ, ভাগ console-এ প্রিন্ট করো
  2. % ব্যবহার করে একটা সংখ্যা জোড় না বিজোড় চেক করো
  3. 5 == "5"5 === "5" — দুটো লিখে ফলাফলের পার্থক্য দেখো
  4. && ব্যবহার করে দুইটা শর্ত একসাথে চেক করো (যেমন বয়স ও একটা boolean)

পরের পর্বে যা থাকছে

পর্ব ৪-এ আমরা শিখবো Condition — if/else ও switch statement দিয়ে কীভাবে শর্ত অনুযায়ী কোড চালানো যায়, উদাহরণসহ।

একটি মন্তব্য পোস্ট করুন

নবীনতর পূর্বতন

যোগাযোগ ফর্ম