इस ट्यूटोरियल में, आप उदाहरणों की मदद से जावास्क्रिप्ट विनाशकारी असाइनमेंट के बारे में जानेंगे।
जावास्क्रिप्ट विनाशकारी
ES6 में शुरू की गई विनाशकारी असाइनमेंट से विभिन्न वेरिएबल्स के लिए एरो वैल्यू और ऑब्जेक्ट प्रॉपर्टी को असाइन करना आसान हो जाता है। उदाहरण के लिए,
ES6 से पहले:
// assigning object attributes to variables const person = ( name: 'Sara', age: 25, gender: 'female' ) let name = person.name; let age = person.age; let gender = person.gender; console.log(name); // Sara console.log(age); // 25 console.log(gender); // female
ES6 से:
// assigning object attributes to variables const person = ( name: 'Sara', age: 25, gender: 'female' ) // destructuring assignment let ( name, age, gender ) = person; console.log(name); // Sara console.log(age); // 25 console.log(gender); // female
नोट : नाम का क्रम वस्तु विनाश में मायने नहीं रखता है।
उदाहरण के लिए, आप उपरोक्त कार्यक्रम को इस प्रकार लिख सकते हैं:
let ( age, gender, name ) = person; console.log(name); // Sara
नोट : वस्तुओं को नष्ट करते समय, आपको चर के लिए उसी नाम का उपयोग करना चाहिए जो संबंधित ऑब्जेक्ट कुंजी के रूप में है।
उदाहरण के लिए,
let (name1, age, gender) = person; console.log(name1); // undefined
यदि आप ऑब्जेक्ट कुंजी के लिए अलग-अलग चर नाम निर्दिष्ट करना चाहते हैं, तो आप उपयोग कर सकते हैं:
const person = ( name: 'Sara', age: 25, gender: 'female' ) // destructuring assignment // using different variable names let ( name: name1, age: age1, gender:gender1 ) = person; console.log(name1); // Sara console.log(age1); // 25 console.log(gender1); // female
एरेस डिस्ट्रक्टिंग
आप एक समान तरीके से सरणी विनाशकारी प्रदर्शन भी कर सकते हैं। उदाहरण के लिए,
const arrValue = ('one', 'two', 'three'); // destructuring assignment in arrays const (x, y, z) = arrValue; console.log(x); // one console.log(y); // two console.log(z); // three
डिफ़ॉल्ट मान निर्दिष्ट करें
आप विनाशकारी का उपयोग करते समय चर के लिए डिफ़ॉल्ट मान असाइन कर सकते हैं। उदाहरण के लिए,
let arrValue = (10); // assigning default value 5 and 7 let (x = 5, y = 7) = arrValue; console.log(x); // 10 console.log(y); // 7
उपरोक्त कार्यक्रम में, arrValue में केवल एक तत्व है। इसलिये,
- x चर 10 होगा
- y चर डिफ़ॉल्ट मान 7 लेता है
ऑब्जेक्ट विनाश में, आप एक समान तरीके से डिफ़ॉल्ट मान पास कर सकते हैं। उदाहरण के लिए,
const person = ( name: 'Jack', ) // assign default value 26 to age if undefined const ( name, age = 26) = person; console.log(name); // Jack console.log(age); // 26
वैरिएबल स्वैपिंग
इस उदाहरण में, विनाशकारी असाइनमेंट सिंटैक्स का उपयोग करके दो चर की अदला-बदली की जाती है।
// program to swap variables let x = 4; let y = 7; // swapping variables (x, y) = (y, x); console.log(x); // 7 console.log(y); // 4
आइटम छोड़ें
आप स्थानीय चर को असाइन किए बिना किसी सरणी में अवांछित आइटम छोड़ सकते हैं। उदाहरण के लिए,
const arrValue = ('one', 'two', 'three'); // destructuring assignment in arrays const (x, , z) = arrValue; console.log(x); // one console.log(z); // three
उपरोक्त कार्यक्रम में, अल्पविराम विभाजक का उपयोग करके दूसरा तत्व छोड़ा गया है ,
।
एक ही चर के लिए शेष तत्वों को असाइन करें
आप एक सरणी के शेष तत्वों को प्रसार सिंटैक्स का उपयोग करके एक चर में असाइन कर सकते हैं …
। उदाहरण के लिए,
const arrValue = ('one', 'two', 'three', 'four'); // destructuring assignment in arrays // assigning remaining elements to y const (x,… y) = arrValue; console.log(x); // one console.log(y); // ("two", "three", "four")
यहाँ, one
x चर को सौंपा गया है। और बाकी एलीमेंट एलिमेंट्स को y वेरिएबल में असाइन किया गया है।
आप किसी एक वैरिएबल को बाकी ऑब्जेक्ट प्रॉपर्टी भी असाइन कर सकते हैं। उदाहरण के लिए,
const person = ( name: 'Sara', age: 25, gender: 'female' ) // destructuring assignment // assigning remaining properties to rest let ( name,… rest ) = person; console.log(name); // Sara console.log(rest); // (age: 25, gender: "female")
नोट : प्रसार सिंटैक्स वाले चर में अनुगामी अल्पविराम नहीं हो सकता है ,
। आपको इस बाकी तत्व (प्रसार सिंटैक्स के साथ चर) का उपयोग अंतिम चर के रूप में करना चाहिए।
उदाहरण के लिए,
const arrValue = ('one', 'two', 'three', 'four'); // throws an error const (… x, y) = arrValue; console.log(x); // eror
नेस्ट विनाशकारी असाइनमेंट
आप सरणी तत्वों के लिए नेस्टेड विनाशकारी प्रदर्शन कर सकते हैं। उदाहरण के लिए,
// nested array elements const arrValue = ('one', ('two', 'three')); // nested destructuring assignment in arrays const (x, (y, z)) = arrValue; console.log(x); // one console.log(y); // two console.log(z); // three
इधर, चर y और z नेस्टेड तत्वों आवंटित कर रहे हैं two
और three
।
नेस्टेड विनाशकारी असाइनमेंट को निष्पादित करने के लिए, आपको चर संरचना में (अंदर संलग्न करके ()
) चर को घेरना होगा ।
आप ऑब्जेक्ट गुणों के लिए नेस्टेड विनाशकारी प्रदर्शन भी कर सकते हैं। उदाहरण के लिए,
const person = ( name: 'Jack', age: 26, hobbies: ( read: true, playGame: true ) ) // nested destructuring const (name, hobbies: (read, playGame)) = person; console.log(name); // Jack console.log(read); // true console.log(playGame); // true
ऑब्जेक्ट के लिए नेस्टेड विनाशकारी असाइनमेंट को निष्पादित करने के लिए, आपको चर को ऑब्जेक्ट संरचना में (अंदर संलग्न करके ()
) संलग्न करना होगा ।
नोट : ES6 में विनाशकारी असाइनमेंट फीचर पेश किया गया था । कुछ ब्राउज़र विनाशकारी असाइनमेंट के उपयोग का समर्थन नहीं कर सकते हैं। अधिक जानने के लिए जावास्क्रिप्ट विनाशकारी सहायता पर जाएँ।