Wann sollte man escape anstelle von encodeURI / encodeURIComponent in JavaScript verwenden?
Hallo! Ich habe kürzlich angefangen, JavaScript zu lernen, und bin bei der Arbeit mit URL-Kodierung auf Verwirrung gestoßen. In verschiedenen Codebeispielen sehe ich drei Funktionen: `escape()`, `encodeURI()` und `encodeURIComponent()`. Sie scheinen alle dasselbe zu tun – spezielle Zeichen durch ihre prozentuale Darstellung zu ersetzen – aber ich verstehe nicht, wann ich welche verwenden soll.
Zum Beispiel schreibe ich ein kleines Skript, um Daten über eine GET-Anfrage an einen Server zu senden. Ich muss Parameter in der URL übergeben, einschließlich Kyrillisch, Leerzeichen und Satzzeichen. Wenn ich `escape()` verwende, erhalte ich so etwas wie `%u041F%u0440%u0438%D0%B2%D0%B5%D1%82`, aber mit `encodeURIComponent()` bekomme ich `%D0%9F%D1%80%D0%B8%D0%B2%D0%B5%D1%82`. Welche Variante ist richtig?
Außerdem habe ich gehört, dass `escape()` veraltet ist, aber es wird immer noch in alten Projekten verwendet. Wann sollte ich es überhaupt anwenden? Und wie unterscheidet sich das Verhalten dieser Funktionen bei verschiedenen Zeichen, zum Beispiel bei `&`, `=`, `#` und Leerzeichen? Ich wäre dankbar für eine ausführliche Erklärung mit Beispielen.
```javascript