아래와 같이 데이터가 주소에 포함되어 있을 때,
하나하나 꺼내오려면 상당히 귀찮다(어렵진 않지만...)
http://fimtrus.tistory.com/1?data1=123&data2=1234
화면이 로딩되는 시점에서 아래 function을 넣어주면
주소에 포함되어 있는 파라미터 값들을 편하게 들고 올 수 있다.
/** * @author jonghyun.jeong * @since 2014.04.01 * URL과 함께 넘어온 데이터들을 리턴한다. */ function getUrlValue( key ) { var valueObject = {}, hash, value; var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&'); for(var i = 0; i < hashes.length; i++) { hash = hashes[i].split('='); valueObject[hash[0]] = hash[1]; } if ( key ) { if ( valueObject[key] ) { return valueObject[key]; } return ""; } return valueObject; }
getUrlValue() 처럼 인자 값을 넘기지 않을 경우 주소에 포함되어 있는 모든 데이터를 Object 형태로 리턴하고
getUrlValue("data1") 처럼 인자 값을 넘길 경우, 해당하는 키의 value만 리턴한다. 없을 경우 "" 을 리턴.
'Programming > Web' 카테고리의 다른 글
[Javascript] backspace, delete 키 이벤트 잡기 (0) | 2015.06.08 |
---|---|
[Javascript] 커스텀 이벤트 만들기. (2) | 2014.10.31 |
자바스크립트 난독화(패킹, 언패킹) (0) | 2014.10.14 |
[Javascript] Iframe document 얻기. (0) | 2014.08.13 |
[Javascript] String byte check. 스트링 바이트 체크 (한글). (0) | 2014.08.13 |