JavaScript में URL को सही तरीके से कैसे एनकोड करें? encodeURI, encodeURIComponent और escape के बीच अंतर
सभी को नमस्कार! मैं JavaScript में नया हूँ और URL के साथ काम करते समय एक समस्या का सामना कर रहा हूँ। मुझे सर्वर पर GET-request भेजना है जिसमें पैरामीटर हैं जिनमें विशेष वर्ण हैं, जैसे स्पेस, सिरिलिक या प्रश्न चिह्न।
यहाँ मेरे कोड का उदाहरण है:
```javascript
let baseUrl = "https://api.example.com/search";
let query = "JavaScript & HTML/CSS уроки";
let fullUrl = baseUrl + "?q=" + query;
fetch(fullUrl)
.then(response => response.json())
.then(data => console.log(data));
```
यह कोड काम नहीं करता क्योंकि URL में स्पेस और `&` चिह्न हैं। मैंने गूगल किया और तीन फंक्शन पाए: `escape()`, `encodeURI()` और `encodeURIComponent()`। लेकिन मैं उलझन में हूँ — इनमें से कौन सा सही है? जब मैं `escape()` का उपयोग करता हूँ, तो यह काम करता है, लेकिन मैंने सुना है कि यह deprecated है। और `encodeURI()` सब कुछ एनकोड नहीं करता, जबकि `encodeURIComponent()` स्लैश को भी एनकोड करता है।
कृपया बताएं कि JavaScript में URL को सही तरीके से कैसे एनकोड करें? किन मामलों में इनमें से प्रत्येक फंक्शन का उपयोग करना चाहिए? और अगर...