메뉴 건너뛰기

조회 수 8523 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
javascript]  Location 객체의 주요멤버 살펴보기

 [코드] getQueryString.js - URL에서 전달인자 추출

Colored By Color Scripter

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
/*
 * URL에서 전달인자 추출
 * URL의 질의 문자열(쿼리스트링) 에서 &로 구분된 이름=값 전달인자 쌍들을 파싱하여 추출
 * 추출한 이름=값 쌍들을 객체의 프로퍼티에 저장하여 이 객체를 결과로서 반환
 * 
 * 함수 사용예)
 * var args = getArgs(); //URL에서 args를 파싱
 * var q = args.q || ''; //정의된 전달인자가 있으면 사용하고 없으면 기본값 사용
 * var n = args.n ? parseInt(args.n) : 10; 
 */


 function getArgs() {
     var args = new Object();
     var query = location.search.substring(1);  //질의문자열을 얻어온다. (?제거를 위해 문자열자름)
     var pairs = query.split("&");              //&위치에서 분리

     for (var i = 0; i < pairs.length; i++) {
        var pos = pairs[i].indexOf('=');          // "이름 = 값" 을 찾는다.
        if (pos == -1) continue;                  //찾지 못했다면 건너뛴다.
        var argname = pairs[i].substring(0, pos); //이름을 추출
        var value = pairs[i].substring(pos+1);      //값을 추출
        value = decodeURIComponent(value);          //필요하다면 디코딩 수행
        args[argname] = value;                      //객체의 프로퍼티로 저장
     }

     return args; //객체를 반환
 }

 

 

 

 

URL에서 전달인자(쿼리스트링)를 추출하여 다음과 같이 객체로 반환

 

 

 

 [코드] 샘플 HTML페이지

Colored By Color Scripter

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<!doctype html>
<html>
 <head>
  <meta charset="UTF-8">
  <title>URL에서 전달인자 추출하기</title>
  <script type="text/javascript" src="getQueryString.js"></script>
  <script>
    var args = getArgs(); //URL에서 args를 파싱
    var q = args.q || ''//정의된 전달인자가 있으면 사용하고 없으면 기본값 사용
    var n = args.n ? parseInt(args.n) : 10; 
    
    console.log(args);
    document.write("q:"+q);
    document.write("<br/>");
    document.write("n:"+n);
  </script>
 </head>
 <body>
 </body>
</html>

 

전달인자가 없을경우 기본값이 출력된 모습



전달인자가 있을경우 

 

  



List of Articles
번호 제목 날짜 조회 수
147 깔끔한 이미지로 2014.02.27 6260
146 setTimeout 대체 스크립트 함수 (일시멈춤) 2016.12.22 6242
145 마우스대면 글자 없어지는 검색창 2014.03.01 6226
144 'setInterval', 타이머를 사용하자! ==setTimeout 2015.02.03 6223
143 클릭위치로 레이어 띄우기 2014.03.01 6220
142 '문자 ↔ 숫자', 타입을 바꿔보자! 2015.02.03 6207
141 iframe 아이프레임 내용 길이에 따라서 높이가 자동으로 조절 되도록 2014.02.27 6206
140 자바스크립트로 네트워크 연결 확인하기 (Navigator onLine Property) file 2015.06.19 6199
139 JDK6 (Java SE Development Kit 6)이하 버전 다운로드 주소 file 2016.09.11 6165
138 textarea의 글자수 제한 2014.02.27 6161
137 유효성 검사, 모든 폼에 값이 입력되도록 해보자! file 2015.02.03 6125
136 현재시간 기준 날짜 계산 2016.09.21 6103
135 구구단 반복문,조건문 변경해서 만들기 2016.09.11 6091
134 해상도에 따라 배경 바꾸기 2014.03.01 6083
133 input 테그안의 숫자 3자리 마다 콤마 찍기 2014.03.01 6077
132 엔코딩/디코딩 함수 2016.09.21 6040
131 'open', 새창을 열어보자! file 2015.02.03 6037
130 셀렉트(select) change 이벤트 (split) 2016.12.23 6009
129 부드럽게 페이지 이동하기 2016.09.11 6003
128 새로고침(F5) 금지 2018.03.28 6001
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved