জাভাস্ক্রিপ্টে ফাংশন প্যারামিটারগুলির ডেস্ট্রাকচারিং

ডেস্ট্রাকচারিংয়ের আরও একটি অত্যন্ত গুরুত্বপূর্ণ অ্যাপ্লিকেশন ক্ষেত্র রয়েছে - ফাংশন প্যারামিটার পাস করা। সারমর্মটি নিম্নরূপ: যদি একটি ফাংশন প্যারামিটার হিসাবে একটি অ্যারে নেয়, আমরা সরাসরি ফাংশন ঘোষণায় নির্দিষ্ট করতে পারি কিভাবে এই অ্যারেটিকে ডেস্ট্রাকচার করা যায়।

আসুন একটি উদাহরণ দেখি। ধরা যাক আমাদের একটি ফাংশন আছে, যা বছর, মাস এবং দিন সহ একটি অ্যারে প্যারামিটার হিসাবে নেয়:

javascriptfunc([2025, 12, 31]);

আসুন ফাংশনের প্যারামিটারেই নির্দিষ্ট করি, এই অ্যারেটিকে কোন ভেরিয়েবলগুলিতে বিভক্ত করা উচিত:

javascriptfunction func([year, month, day]) {
  console.log(year);  // 2025 আউটপুট করবে
  console.log(month); // 12 আউটপুট করবে
  console.log(day);   // 31 আউটপুট করবে
}

উপরের কনস্ট্রাকশনটিকে ফাংশনের একটি প্যারামিটার হিসাবে বিবেচনা করা উচিত। ইচ্ছে করলে আরও প্যারামিটার যোগ করা যেতে পারে:

javascriptfunc('str1', [2025, 12, 31], 'str2');

function func(param1, [year, month, day], param2) {
  console.log(param1); // 'str1' আউটপুট করবে
  
  console.log(year);   // 2025 আউটপুট করবে
  console.log(month);  // 12 আউটপুট করবে
  console.log(day);    // 31 আউটপুট করবে
  
  console.log(param2); // 'str2' আউটপুট করবে
}

এবং পরের উদাহরণে, ফাংশনের প্রথম এবং দ্বিতীয় প্যারামিটার হিসাবে অ্যারে পাস করা হয় এবং আমরা উভয়কেই ডেস্ট্রাকচার করি:

javascriptfunc([2025, 12, 31], [2026, 11, 30]);

function func([year1, month1, day1], [year2, month2, day2]) {
  console.log(year1);  // 2025 আউটপুট করবে
  console.log(month1); // 12 আউটপুট করবে
  console.log(day1);   // 31 আউটপুট করবে
  
  console.log(year2);  // 2026 আউটপুট করবে
  console.log(month2); // 11 আউটপুট করবে
  console.log(day2);   // 30 আউটপুট করবে
}
Задание 1

নিম্নলিখিত কোডটি অধীত তত্ত্ব অনুসারে ডেস্ট্রাকচারিং এর মাধ্যমে পুনরায় লিখুন:

javascriptfunction func(employee) {
  let name       = employee[0];
  let surname    = employee[1];
  let department = employee[2];
  let position   = employee[3];
  let salary     = employee[4];
}

func( ['John', 'Smit', 'development', 'programmer', 2000] );
Задание 2

নিম্নলিখিত কোডটি অধীত তত্ত্ব অনুসারে ডেস্ট্রাকচারিং এর মাধ্যমে পুনরায় লিখুন:

javascriptfunction func(employee) {
  let name     = employee[0];
  let surname  = employee[1];
  let info     = employee[2];
}

func( ['John', 'Smit', 'development', 'programmer', 2000] );
Задание 3

নিম্নলিখিত কোডটি অধীত তত্ত্ব অনুসারে ডেস্ট্রাকচারিং এর মাধ্যমে পুনরায় লিখুন:

javascriptfunction func(employee) {
  let name       = employee[0];
  let surname    = employee[1];
  let department = employee[2];
  
  let position;
  if (arr[3] !== undefined) {
    position = arr[3];
  } else {
    position = 'junior';
  }
}

func( ['John', 'Smit', 'development'] );
Задание 4

নিম্নলিখিত কোডটি অধীত তত্ত্ব অনুসারে ডেস্ট্রাকচারিং এর মাধ্যমে পুনরায় লিখুন:

javascriptfunction func(department, employee, hired) {
  let name     = employee[0];
  let surname  = employee[1];
  
  let year  = hired[0];
  let month = hired[1];
  let day   = hired[2];
}

func( 'development', ['John', 'Smit'], [2018, 12, 31] );