जावास्क्रिप्ट स्प्रेड ऑपरेटर

इस ट्यूटोरियल में, आप उदाहरणों की मदद से जावास्क्रिप्ट प्रसार ऑपरेटर के बारे में जानेंगे।

स्प्रेड ऑपरेटर जावास्क्रिप्ट ईएस 6 संस्करण में उपलब्ध सुविधाओं के लिए एक नया अतिरिक्त है ।

फैला हुआ संचालक

प्रसार ऑपरेटर का उपयोग एक चलने या सरणी को विस्तारित करने या फैलाने के लिए किया जाता है। उदाहरण के लिए,

 const arrValue = ('My', 'name', 'is', 'Jack'); console.log(arrValue); // ("My", "name", "is", "Jack") console.log(… arrValue); // My name is Jack

इस मामले में, कोड:

 console.log(… arrValue)

के बराबर है:

 console.log('My', 'name', 'is', 'Jack');

स्प्रेड ऑपरेटर का उपयोग करके एरियर कॉपी करें

आप आइटम को एकल सरणी में कॉपी करने के लिए फैल सिंटैक्स का भी उपयोग कर सकते हैं । उदाहरण के लिए,

 const arr1 = ('one', 'two'); const arr2 = (… arr1, 'three', 'four', 'five'); console.log(arr2); // Output: // ("one", "two", "three", "four", "five")

फैलाने वाले ऑपरेटर का उपयोग करके क्लोन ऐरे

जावास्क्रिप्ट में, वस्तुओं को संदर्भ द्वारा निर्दिष्ट किया जाता है न कि मूल्यों द्वारा। उदाहरण के लिए,

 let arr1 = ( 1, 2, 3); let arr2 = arr1; console.log(arr1); // (1, 2, 3) console.log(arr2); // (1, 2, 3) // append an item to the array arr1.push(4); console.log(arr1); // (1, 2, 3, 4) console.log(arr2); // (1, 2, 3, 4)

यहाँ, वेरिएबल्स arr1 और arr2 दोनों समान ऐरे की बात कर रहे हैं। इसलिए एक चर में परिवर्तन से दोनों चर में परिवर्तन होता है।

हालाँकि, यदि आप सरणियों की प्रतिलिपि बनाना चाहते हैं ताकि वे उसी सरणी को संदर्भित न करें, तो आप प्रसार ऑपरेटर का उपयोग कर सकते हैं। इस तरह, एक सरणी में परिवर्तन दूसरे में परिलक्षित नहीं होता है। उदाहरण के लिए,

 let arr1 = ( 1, 2, 3); // copy using spread syntax let arr2 = (… arr1); console.log(arr1); // (1, 2, 3) console.log(arr2); // (1, 2, 3) // append an item to the array arr1.push(4); console.log(arr1); // (1, 2, 3, 4) console.log(arr2); // (1, 2, 3)

ऑब्जेक्ट के साथ फैला हुआ ऑपरेटर

आप ऑब्जेक्ट ऑपरेटर के साथ प्रसार ऑपरेटर का भी उपयोग कर सकते हैं। उदाहरण के लिए,

 const obj1 = ( x : 1, y : 2 ); const obj2 = ( z : 3 ); // add members obj1 and obj2 to obj3 const obj3 = (… obj1,… obj2); console.log(obj3); // (x: 1, y: 2, z: 3)

यहां, प्रसार ऑपरेटर का उपयोग करने के लिए दोनों obj1और obj2गुण जोड़े जाते हैं obj3

बाकी पैरामीटर

जब प्रसार ऑपरेटर को एक पैरामीटर के रूप में उपयोग किया जाता है, तो इसे बाकी पैरामीटर के रूप में जाना जाता है।

आप बाकी पैरामीटर का उपयोग करके फ़ंक्शन कॉल में कई तर्क भी स्वीकार कर सकते हैं। उदाहरण के लिए,

 let func = function(… args) ( console.log(args); ) func(3); // (3) func(4, 5, 6); // (4, 5, 6)

यहाँ,

  • जब एक एकल func()फ़ंक्शन को पास किया जाता है, तो बाकी पैरामीटर केवल एक पैरामीटर लेता है।
  • जब तीन तर्क पारित किए जाते हैं, तो बाकी पैरामीटर सभी तीन मापदंडों को लेता है।

नोट : बाकी पैरामीटर का उपयोग करने वाले तर्कों को सरणी तत्वों के रूप में पारित करेंगे।

आप प्रसार ऑपरेटर का उपयोग करके फ़ंक्शन के लिए कई तर्क भी पास कर सकते हैं। उदाहरण के लिए,

 function sum(x, y ,z) ( console.log(x + y + z); ) const num1 = (1, 3, 4, 5); sum(… num1); // 8

यदि आप प्रसार ऑपरेटर का उपयोग करके कई तर्क पास करते हैं, तो फ़ंक्शन आवश्यक तर्क लेता है और बाकी को अनदेखा करता है।

नोट : स्प्रेड ऑपरेटर को ES6 में पेश किया गया था । कुछ ब्राउज़र स्प्रेड सिंटैक्स के उपयोग का समर्थन नहीं कर सकते हैं। अधिक जानने के लिए जावास्क्रिप्ट स्प्रेड ऑपरेटर समर्थन पर जाएँ।

दिलचस्प लेख...