JavaScript-এ স্প্রেড অপারেটর
ES6-এ একটি বিশেষ অপারেটর ... উপস্থাপন করা হয়েছিল,
যাকে spread বলা হয়।
যখন স্প্রেড অপারেটর একটি অ্যারের আগে থাকে, এটি সেই অ্যারেটিকে পৃথক মানগুলিতে বিভক্ত করে, অ্যারেটিকে ফাংশন কলের জন্য প্রয়োজনীয় প্যারামিটারের সেটে পরিণত করে।
নিশ্চয়ই এটি অস্পষ্ট শোনাচ্ছে, তাই আসুন
একটি সহজ উদাহরণ দেখি। ধরা যাক আমাদের
একটি ফাংশন আছে যা 3টি প্যারামিটার নেয়
এবং তাদের যোগফল রিটার্ন করে:
function func(num1, num2, num3) {
return num1 + num2 + num3;
}
ধরা যাক আমাদের তিনটি উপাদান সহ একটি অ্যারে রয়েছে:
let arr = [1, 2, 3];
স্পষ্টতই, আমরা কেবল এই অ্যারেটি নিতে পারি না এবং এটিকে ফাংশনের প্যারামিটার হিসেবে পাস করি, এভাবে:
let arr = [1, 2, 3];
func(arr);
কারণ এই ক্ষেত্রে সম্পূর্ণ অ্যারে ফাংশনের প্রথম প্যারামিটারে চলে যাবে, এবং এই প্যারামিটারে একটি সংখ্যা পাঠানো প্রয়োজন (এবং বাকি প্যারামিটারগুলিতেও)।
অবশ্যই, নিম্নলিখিতভাবে এগোনো সম্ভব:
let arr = [1, 2, 3];
func(arr[0], arr[1], arr[2]);
তবে একটি সহজ পথও রয়েছে - স্প্রেড অপারেটর ব্যবহার করা:
let arr = [1, 2, 3];
func(...arr);
একটি ভেরিয়েবলের উপস্থিতি বাধ্যতামূলক নয় - সরাসরি অ্যারেতে spread প্রয়োগ করা যেতে পারে:
func(...[1, 2, 3]);
একটি অ্যারে দেওয়া হয়েছে:
let arr = [1, 2, 3, 4, 5];
একটি ফাংশনও দেওয়া হয়েছে:
function func(num1, num2, num3, num4, num5) {
return num1 + num2 + num3 + num4 + num5;
}
প্রদত্ত ফাংশন ব্যবহার করে অ্যারের উপাদানগুলির যোগফল নির্ণয় করুন।