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

জাভাস্ক্রিপ্ট array.keys() মেথড: ব্যবহার এবং উদাহরণ

array.keys() — অ্যারে কী (ইনডেক্স) এর ইটারেটর

Array.prototype.keys() মেথড একটি নতুন Array Iterator অবজেক্ট রিটার্ন করে যেটিতে অ্যারে-এর সকল ইনডেক্স (কী) থাকে। এটি মান (values) নয়, শুধু ইনডেক্স দেয়।

সিনট্যাক্স

array.keys()

প্যারামিটার নেয় না। রিটার্ন মান: IterableIterator<number>।

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

উদাহরণ ১: স্ট্রিং অ্যারে-এর ইনডেক্স প্রিন্ট

const arrStud = ["Crossover", "Convertible", "Hatchback", "SUV"];
const iterator = arrStud.keys();

for (const index of iterator) {
  console.log(index); // 0, 1, 2, 3
}

উদাহরণ ২: নম্বর অ্যারে এবং বাটন ক্লিকে ইনডেক্স দেখানো

const pointsArr = [10, 20, 30, 40, 50, 60, 70, 80, 90, 1000];

function displayKeys() {
  const iterator = pointsArr.keys();
  const output = document.getElementById('output');
  output.innerHTML = ''; // ক্লিয়ার
  
  for (const index of iterator) {
    output.innerHTML += index + '
'; } // আউটপুট: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 (প্রতিটি নতুন লাইনে) }

গুরুত্বপূর্ণ বৈশিষ্ট্য

  • হোল (sparse arrays) হ্যান্ডলিং: খালি স্লটের ইনডেক্সও রিটার্ন করে।
  • const sparse = [1, , 3]; // ইনডেক্স ১ খালি
    [...sparse.keys()]; // [0, 1, 2] — খালি স্লটও গिना जाता है
  • ইটারেটর একবারের জন্য: একবার ইটারেট করার পর ইটারেটর এক্সহস্ট হয়। পুনরায় ব্যবহার করতে keys() আবার কল করুন।
  • Array.from() বা স্প্রেড অপারেটর দিয়ে অ্যারে বানানো যায়:
    const indices = [...arr.keys()]; // [0, 1, 2, ...]
    const indices2 = Array.from(arr.keys());

সম্পর্কিত মেথড তুলনা

মেথডরিটার্ন করেউদাহরণ
keys()ইনডেক্স (০, ১, ২...)[...['a','b'].keys()] → [0,1]
values()এলিমেন্ট মান[...['a','b'].values()] → ['a','b']
entries()[ইনডেক্স, মান] পেয়ার[...['a','b'].entries()] → [[0,'a'],[1,'b']]

ব্রাউজার সাপোর্ট

সকল আধুনিক ব্রাউজার (Chrome, Firefox, Edge, Safari) এবং Node.js ০.১২+ এ সমর্থিত। IE-এ নেই (পলিফিল দরকার)।

ব্যবহারিক টিপস

  • শুধু ইনডেক্স দরকার হলে keys() ব্যবহার করুন, for (let i=0; i-এর চেয়ে ক্লিন।
  • for...of লুপে সরাসরি ব্যবহার করুন।
  • অ্যারে হোল (sparse) থাকলে keys() হোলের ইনডেক্সও দেবে, Object.keys(arr) শুধু মূর্ত প্রপার্টি দেবে।
  1. জাভাস্ক্রিপ্ট Array shift() মেথড

  2. জাভাস্ক্রিপ্ট Array reverse() মেথড

  3. জাভাস্ক্রিপ্টে অ্যারে ডিস্ট্রাকচারিং

  4. জাভাস্ক্রিপ্টে Object.keys().map() VS Array.map()