JavaScript में escape का उपयोग कब करना चाहिए बजाय encodeURI / encodeURIComponent के?
नमस्ते! मैंने हाल ही में JavaScript सीखना शुरू किया है और URL एन्कोडिंग के साथ काम करते समय भ्रम का सामना करना पड़ा। विभिन्न कोड उदाहरणों में मैं तीन फंक्शन देखता हूँ: `escape()`, `encodeURI()` और `encodeURIComponent()`। ये सभी एक ही काम करते प्रतीत होते हैं — विशेष कैरेक्टर्स को उनके प्रतिशत प्रतिनिधित्व में बदलना, लेकिन मुझे समझ नहीं आता कि कब किसका उपयोग करना चाहिए।
उदाहरण के लिए, मैं GET रिक्वेस्ट के माध्यम से सर्वर पर डेटा भेजने के लिए एक छोटा स्क्रिप्ट लिख रहा हूँ। मुझे URL में पैरामीटर पास करने की आवश्यकता है, जिसमें सिरिलिक, स्पेस और विराम चिह्न शामिल हैं। यदि मैं `escape()` का उपयोग करता हूँ, तो मुझे कुछ इस तरह मिलता है `%u041F%u0440%u0438%D0%B2%D0%B5%D1%82`, जबकि `encodeURIComponent()` के साथ — `%D0%9F%D1%80%D0%B8%D0%B2%D0%B5%D1%82`। कौन सा विकल्प सही है?
इसके अलावा, मैंने सुना है कि `escape()` पुराना हो चुका है, लेकिन इसका उपयोग अभी भी पुराने प्रोजेक्ट्स में किया जाता है। कब इसका उपयोग करना चाहिए?