[javascript] JavaScript URL 디코드 기능

최고의 JavaScript URL 디코드 유틸리티는 무엇입니까? 인코딩도 좋을 것이고 jQuery와 잘 작동하는 것이 추가 보너스입니다.



답변

내가 사용했습니다 에 encodeURIComponent ()decodeURIComponent () 도 있습니다.


답변

다음은 완전한 기능입니다 ( PHPJS 에서 가져옴 ).

function urldecode(str) {
   return decodeURIComponent((str+'').replace(/\+/g, '%20'));
}


답변

이것을 사용하십시오

unescape(str);

나는 훌륭한 JS 프로그래머가 아니며 모두 시도해 보았습니다.


답변

decodeURIComponent(mystring);

이 코드를 사용하여 전달 된 매개 변수를 얻을 수 있습니다.

//parse URL to get values: var i = getUrlVars()["i"];
function getUrlVars() {
    var vars = [], hash;
    var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
    for (var i = 0; i < hashes.length; i++) {
        hash = hashes[i].split('=');
        vars.push(hash[0]);
        vars[hash[0]] = hash[1];
    }
    return vars;
}

또는이 하나의 라이너는 매개 변수를 가져옵니다.

location.search.split("your_parameter=")[1]


답변

//How decodeURIComponent Works

function proURIDecoder(val)
{
  val=val.replace(/\+/g, '%20');
  var str=val.split("%");
  var cval=str[0];
  for (var i=1;i<str.length;i++)
  {
    cval+=String.fromCharCode(parseInt(str[i].substring(0,2),16))+str[i].substring(2);
  }

  return cval;
}

document.write(proURIDecoder(window.location.href));


답변

urlencode를 사용하여 PHP에서 데이터 인코딩을 담당하는 경우 PHP의 rawurlencode는 + 문자를 바꾸지 않고도 JavaScript의 decodeURIComponent와 함께 작동합니다.


답변

내가 사용한 것은 다음과 같습니다.

자바 스크립트에서 :

var url = "http://www.mynewsfeed.com/articles/index.php?id=17";
var encoded_url = encodeURIComponent(url);

var decoded_url = decodeURIComponent(encoded_url);

PHP에서 :

$url = "http://www.mynewsfeed.com/articles/index.php?id=17";
$encoded_url = url_encode(url);

$decoded_url = url_decode($encoded_url);

http://www.mynewsfeed.x10.mx/articles/index.php?id=17에서 온라인으로 시도 할 수도 있습니다.