JavaScript এর Array.from() মেথড

 

JavaScript এর Array.from() মেথড – সহজভাবে বুঝুন

Array.from() হচ্ছে একটি static মেথড যেটি ইটারেবল অবজেক্ট বা অ্যারে-লাইক অবজেক্টকে প্রকৃত অ্যারেতে রূপান্তর করে। এটি অনেক সময় ইউজার ইনপুট, DOM NodeList, arguments বা string কে অ্যারে বানাতে সাহায্য করে।

সিনট্যাক্স:

Array.from(arrayLike, mapFn, thisArg)
  • arrayLike: যেকোনো ইটারেবল অবজেক্ট (যেমন string, Set, arguments ইত্যাদি)
  • mapFn (optional): প্রতিটি উপাদানকে প্রসেস করার জন্য ফাংশন
  • thisArg (optional): mapFn এর context নির্ধারণে ব্যবহৃত

উদাহরণ ১: String থেকে Array

চলুন একটি string কে character অ্যারেতে রূপান্তর করি:

<script>
const str = “hello”;
const letters = Array.from(str);
console.log(letters); // Output: [‘h’, ‘e’, ‘l’, ‘l’, ‘o’]
</script>

উদাহরণ ২: Set থেকে Array

Set এর সকল unique মানকে অ্যারেতে রূপান্তর:

<script>
const mySet = new Set([1, 2, 3]);
const arr = Array.from(mySet);
console.log(arr); // Output: [1, 2, 3]
</script>

উদাহরণ ৩: Array-like object

length সহ অবজেক্টকে অ্যারে বানানো:

<script>
const obj = {0: “a”, 1: “b”, length: 2};
const arr = Array.from(obj);
console.log(arr); // Output: [‘a’, ‘b’]
</script>

উদাহরণ ৪: mapFn ব্যবহার

Array.from() দ্বিতীয় প্যারামিটার হিসেবে একটি map ফাংশন গ্রহণ করে:

<script>
const numbers = Array.from([1, 2, 3], x => x * 2);
console.log(numbers); // Output: [2, 4, 6]
</script>

কোথায় ব্যবহৃত হয়?

Use Case উদাহরণ
String কে character array এ রূপান্তর Array.from(“abc”) → [‘a’,’b’,’c’]
NodeList কে array বানানো Array.from(document.querySelectorAll(“div”))
arguments object থেকে অ্যারে Array.from(arguments)

বিশেষ টিপস

  • Array.from() ইটারেবল অবজেক্টের জন্য সেরা
  • mapFn দিয়ে সাথে সাথে মান প্রসেস করা যায়
  • ডিপ কপি না, শ্যালো কপি রিটার্ন করে

ভুল ব্যবহার – সতর্ক থাকুন

অপ্টিমাইজ না করে শুধু লুপিংয়ের জন্য Array.from() ব্যবহার করা ঠিক নয়, বিশেষ করে পারফরম্যান্স সংবেদনশীল ক্ষেত্রে।

উপসংহার

Array.from() অনেক কাজের একটি utility মেথড যা যে কোনো ইটারেবল অবজেক্টকে সহজে প্রকৃত অ্যারেতে রূপান্তর করে। DOM ম্যানিপুলেশন, ফর্ম ডেটা প্রসেসিং বা কাস্টম অবজেক্ট হোক — এই মেথড আপনার JavaScript দক্ষতা অনেক বাড়িয়ে তুলবে।


 

Leave a Reply