2017-05-02 2 views
1

ich auf einem Web-api mit einem Team und jemand legte diesen Code arbeite inWas ist URL-Dekodierung und URL-Codierung

params.forEach(function (item, index) { 
    params[index] = decodeURI(item); 
    }); 

Was diese Funktion zu erreichen, ist?

+0

'decodeURI' ist so gut wie nie, was Sie wollen. 'decodeURIComponent' /' encodeURIComponent' sind viel geeigneter. – Brad

+0

Google viel? ... wörtlich das erste Ergebnis für den Suchbegriff 'decodeURI' ... https://www.google.com/search?rls=en&q=decodeURI&ie=UTF-8&oe=UTF-8 – Myst

+0

Zuerst versuchen Sie [zu lesen ] (https://en.wikipedia.org/wiki/Uniform_Resource_Identifier) ​​ – Teocci

Antwort

0

Es ändert die entkam Werte

https://developer.mozilla.org/ru/docs/JavaScript_%D1%88%D0%B5%D0%BB%D0%BB%D1%8B

zu den tatsächlichen Zeichen

https://developer.mozilla.org/ru/docs/JavaScript_шеллы

mehr Siehe hier: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/decodeURI

Diese Funktion insbesondere die einzelnen Parameter wie entkam nimmt (also im Grunde die name%3Dbob, ändert sich es auf den tatsächlichen Wert wie name=bob und klebt diesen Wert zurück in das params-Array im selben Index und überschreibt den alten Wert.

0

die forEach Funktion eine Schleife durch die Elemente in params und ersetzt jedes Element in params mit der decodierten Version des URI

Einfaches Beispiel

var params = ['%28','%29','%21']; 

params.forEach(function (item, index) { 
    params[index] = decodeURI(item); 
}); 

console.log(params) // params should now be ['(',')', '!']