[javascript] सेट को ऐरे में कैसे परिवर्तित करें?


1 Answers

एंगस क्रॉल द्वारा https://speakerdeck.com/anguscroll/es6-uncensored माध्यम से

यह पता चला है, हम spread ऑपरेटर का उपयोग कर सकते हैं:

var myArr = [...mySet];

या, वैकल्पिक रूप से, Array.from उपयोग करें Array.from :

var myArr = Array.from(mySet);
Question

सेट गारंटीकृत अद्वितीय तत्वों के साथ Arrays बनाने के लिए एक अच्छा तरीका प्रतीत होता है, लेकिन यह जेनरेटर [सेट] .values ​​को छोड़कर, गुणों को प्राप्त करने के किसी भी अच्छे तरीके का खुलासा नहीं करता है, जिसे mySet.values.next() अजीब तरीके से बुलाया जाता है। ।

यह ठीक रहेगा, अगर आप सेट पर map और इसी तरह के कार्यों को कॉल कर सकते हैं। लेकिन आप यह भी नहीं कर सकते हैं।

मैंने Array.from की कोशिश की है, लेकिन ऐसा लगता है कि केवल सरणी की तरह (नोडलिस्ट और टाइपेडअरेज़?) ऑब्जेक्ट्स को ऐरे में परिवर्तित किया जा रहा है। एक और प्रयास: Object.keys सेट्स के लिए काम नहीं करता है, और Set.prototype में समान स्थिर विधि नहीं है।

तो, सवाल: क्या किसी दिए गए सेट के मानों के साथ ऐरे बनाने के लिए कोई सुविधाजनक इनबिल्ट विधि है? (तत्व का आदेश वास्तव में कोई फर्क नहीं पड़ता)।

यदि ऐसा कोई विकल्प मौजूद नहीं है, तो हो सकता है कि ऐसा करने के लिए एक अच्छा मुहावरे वाला एक-लाइनर हो? जैसे, के लिए उपयोग, या समान?




अपना वांछित परिणाम प्राप्त करने के लिए स्प्रेड ऑपरेटर का उपयोग करें

var arrayFromSet = [...set];



Related