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

জাভাস্ক্রিপ্টে ডুপ্লিকেট ভেরিয়েবল ডিক্লেয়ারেশন কীভাবে প্রতিরোধ করবেন?


IIFE (Immediately Invoked Function Expression) ব্যবহার

ডুপ্লিকেট ভেরিয়েবল ডিক্লেয়ারেশন প্রতিরোধ করতে ভেরিয়েবল ডিক্লেয়ারেশনকে ফাংশন এক্সপ্রেশন দিয়ে র‍্যাপ করুন:

(function() {
    var rank = 1;
}())

কিভাবে কাজ করে

  • উপরের কোড আপনার ভেরিয়েবলকে অন্যান্য ভেরিয়েবল এবং ফাংশন থেকে আলাদা রাখে।
  • গ্লোবাল স্কোপে আউটসাইড ভেরিয়েবলগুলো প্রভাবিত হয় না।
  • আপনার rank ভেরিয়েবল ফাংশনের বাইরে দৃশ্যমান নয়।
  • ভেরিয়েবল সংক্রান্ত যেকোনো কোড ফাংশনের ভিতরে লিখতে হবে।

আধুনিক বিকল্প: ES6 মডিউল এবং ব্লক স্কোপ

// ES6 মডিউল (সেরা - ফাইল লেভেল স্কোপ)
// file1.js
export const rank = 1;

// file2.js
import { rank } from './file1.js';

// ব্লক স্কোপ (let/const)
{
    let rank = 1; // শুধু এই ব্লকে সীমাবদ্ধ
}
// এখানে rank অ্যাক্সেসযোগ্য নয়

নেমস্পেস প্যাটার্ন (পুরানো)

var MyApp = MyApp || {};
MyApp.rank = 1;
MyApp.points = 100;
  1. জাভাস্ক্রিপ্টে ফাংশন ভেরিয়েবলে অ্যাসাইন করা

  2. জাভাস্ক্রিপ্ট ফাংশনকে ফাংশন হিসেবে আহ্বান করা

  3. জাভাস্ক্রিপ্টে ভেরিয়েবলে থাকা ফাংশন নাম দিয়ে এক্সিকিউট করা

  4. জাভাস্ক্রিপ্ট ফাংশনে গ্লোবাল ভেরিয়েবল কীভাবে ডিফাইন করবেন?