Wie in dieser Antwort über aquí : str='foo%20%5B12%5D'
kodiert foo [12]
:
%20 is space
%22 is quotes
%5B is '['
and %5D is ']'
Dies wird als Prozentkodierung und wird für die Kodierung von Sonderzeichen in den Url-Parameterwerten verwendet.
EDIT Übrigens, während ich las https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/encodeURI#Description Mir ist gerade klar geworden, warum so viele Menschen die gleiche Suche durchführen. Siehe den Hinweis am Ende der Seite:
Außerdem ist zu beachten, dass, wenn man sich an den neueren RFC3986 für URLs, wodurch eckige Klammern reserviert werden (für IPv6) und somit nicht kodiert werden, wenn etwas gebildet wird, das Teil einer URL sein könnte (wie z. B. ein Host), kann das Folgende helfen.
function fixedEncodeURI (str) {
return encodeURI(str).replace(/%5B/g, '[').replace(/%5D/g, ']');
}
Ich hoffe, dass dies den Menschen helfen wird, ihre Probleme zu lösen, wenn sie über diese Frage stolpern.