কম্পিউটার টিউটোরিয়াল

JavaScript Infinity প্রপার্টি: অসীম মান হ্যান্ডলিং

ভূমিকা

JavaScript-এ Infinity একটি গ্লোবাল প্রপার্টি যা গাণিতিক অসীমতা (mathematical infinity) প্রতিনিধিত্ব করে। যখন কোনো সংখ্যা ফ্লোটিং-পয়েন্ট নম্বরের সর্বোচ্চ সীমা ছাড়িয়ে যায়, তখন এটি Infinity দেখায় এবং নেগেটিভ দিকেই -Infinity।

সম্পূর্ণ কোড উদাহরণ

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <title>JavaScript Infinity Property</title>
  <style>
    body {
      font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
    }
    .num {
      font-size: 18px;
      font-weight: 500;
    }
  </style>
</head>
<body>
  <h1>JavaScript Infinity প্রপার্টি</h1>
  <div class="num" id="num1">1.797693134862315E+308</div>
  <div class="num" id="num2">-1.797693134862315E+308</div>
  <button class="Btn" id="calcBtn">ক্লিক করুন</button>
  <h3> উপরের বাটনে ক্লিক করলে উপরের ফ্লোটিং নম্বরের সাথে ১ যোগ এবং বিয়োগ করা হবে </h3>
  <script>
    let num1 = document.getElementById("num1");
    let num2 = document.getElementById("num2");
    
    document.getElementById("calcBtn").addEventListener("click", () => {
      num1.innerHTML = +num1.innerHTML + 1;
      num2.innerHTML = +num2.innerHTML - 1;
    });
  </script>
</body>
</html>

Infinity সম্পর্কে মূল তথ্য

জাভাস্ক্রিপ্টে সংখ্যার সীমা

  • সর্বোচ্চ মান: Number.MAX_VALUE ≈ 1.7976931348623157e+308
  • সর্বনিম্ন মান: Number.MIN_VALUE ≈ 5e-324
  • এই সীমা ছাড়লে Infinity বা -Infinity রিটার্ন করে

Infinity তৈরি হওয়ার পরিস্থিতি

// ধনাত্মক অসীমতা
console.log(1e308 * 10);        // Infinity
console.log(1 / 0);             // Infinity
console.log(Math.pow(10, 1000)); // Infinity

// ঋণাত্মক অসীমতা
console.log(-1e308 * 10);       // -Infinity
console.log(-1 / 0);            // -Infinity

Infinity চেক করার উপায়

// isFinite() ফাংশন ব্যবহার
console.log(isFinite(Infinity));    // false
console.log(isFinite(100));         // true

// Number.isFinite() (ES6) - আরও নিরাপদ
console.log(Number.isFinite(Infinity)); // false
console.log(Number.isFinite("100"));    // false (স্ট্রিং চেক করে না)

// Infinity প্রপার্টি সরাসরি চেক
console.log(Infinity === 1/0); // true

Infinity-এর গাণিতিক আচরণ

অপারেশন ফলাফল
Infinity + 1 Infinity
Infinity - 1 Infinity
Infinity * 2 Infinity
Infinity / 2 Infinity
Infinity - Infinity NaN
Infinity / Infinity NaN
Infinity * 0 NaN

ব্যবহারিক উদাহরণ

// বড় সংখ্যা ক্যালকুলেশন হ্যান্ডলিং
function safeDivide(a, b) {
  if (b === 0) return a > 0 ? Infinity : -Infinity;
  return a / b;
}

// সীমা চেক
function checkOverflow(result) {
  if (!isFinite(result)) {
    console.warn("সংখ্যা ওভারফ্লো হয়েছে!");
    return null;
  }
  return result;
}

আউটপুট ব্যাখ্যা

উদাহরণ কোডে ১.৭৯৭৬৯৩১৩৪৮৬২৩১৫E+৩০৮ এর সাথে ১ যোগ করলে এটি Infinity হয়ে যাবে, কারণ এটি JavaScript-র সর্বোচ্চ নম্বর সীমা অতিক্রম করেছে। একইভাবে ঋণাত্মক দিকেও -Infinity দেখা যাবে।

  1. জাভাস্ক্রিপ্টে TypedArray.byteLength প্রপার্টি

  2. জাভাস্ক্রিপ্ট কার্সর প্রপার্টি

  3. জাভাস্ক্রিপ্ট lastIndex প্রোপার্টি

  4. জাভাস্ক্রিপ্ট source প্রোপার্টি