메뉴 건너뛰기

조회 수 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
번호 제목 날짜 조회 수
247 활용예제 : 체크박스 전체선택 전체해제 /라디오버튼 2014.03.01 7020
246 현재시간 기준 날짜 계산 2016.09.21 6103
245 현재 날짜, 시간 ( Month + 1 에 대해서 ) 2021.03.25 218
244 핸드폰 번호 일부 마스킹크 작업 (정규식 이용) 2015.06.19 10741
243 해상도에 따라 배경 바꾸기 2014.03.01 6083
242 함수의 arguments 를 이름(key)으로 접근하기 2016.09.21 5976
241 한글 짜르기 2019.01.16 1179
240 한글 또는 영문만이 존재하는지 체크 2019.01.16 1163
239 풍선도움말 2019.01.16 1167
238 폼안에 태그명, 함수명 같을때 오류 2021.03.26 215
237 페이지 이동 2021.03.26 190
236 페이지 로드 할때 컨트롤에 포커스 주기 2015.02.03 8500
235 패스워드, 확인패스워드가 맞는지 체크 2023.01.12 129
234 팝업창 차단 "허용 메시지" 2018.09.28 1738
233 팝업창 맨위로 올라오게 하기 2021.03.26 874
232 팝업창 가운데 띄우기 2016.12.23 6705
231 특정부위 마우스 오버시 설명을 보여주는 소스 2014.03.17 8697
230 특정 부분 인쇄 자바스크립트 2019.01.16 1588
229 특정 HTML DOM 엘레멘트로 스크롤 이동하기 2016.09.09 7075
228 텍스트박스(input type = "text") 숫자 증가, 감소 시키기 - 쇼핑몰 주문 수량 file 2015.06.19 12288
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

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

© k2s0o1d4e0s2i1g5n. All Rights Reserved