본문 바로가기

기존카테고리/ASP

IsArray 와 Ubound 함수

ASP에서 배열을 체크하는 함스는 IsArray이다.


1. IsArray()


예)

Dim mArr(5)

Dim mStr


Response.Write "IsArray(mArr): "&IsArray(mArr)&"<br>"

출력: IsArray(mArr): True


Response.Write "IsArray(mStr): "&IsArray(mStr)&"<br>"

IsArray(mStr): False


IsArray 함수는 값이 배열일 경우 True를, 배열이 아닐 경우 False를 반환한다.


한가지 예를 더 보자.

배열인지 아닌지 IF문을 작성해서 판단하고 있다.


if IsArray(mArr) then

    response.write "mArr 배열 크기는 : "&Ubound(mArr)&"<br>"

else

    response.write "mArr 배열 아님"&"<br>"

end if


if IsArray(mStr) then

    response.write "mStr 배열 크기는 : "&Ubound(mStr)&"<br>"

else

    response.write "mStr 배열 아님"&"<br>"

end if


출력:

mArr 배열 크기는 : 5
mStr 배열 아님





여기서 Ubound 함수를 알아보자.


2. Ubound()


Ubound 함수는 배열의 크기를 나타낸다.

위 예에서 보면 Ubound(mArr)이라는 부분의 값이 배열의 크기인 5가 나온다.

배열의 크기가 5이면 배열이 5개일까?

아니다 배열은 0,1,2,3,4,5 로 

즉 0 부터 시작하므로 배열의 갯수는 6개이다.

그래서 for문으로 돌리 때

시작 숫자를 0으로 해서 작성한다.


예를 보자


Dim textArr, mSplit, i


textArr = "aa;bb;cc;dd;ee"


textArr의 변수에 값 "aa;bb;cc;dd;ee"를 넣어준다.


mSplit = split(textArr,";")


mSplit의 변수에 textArr에 들어 있는 값들을 split함수를 이용하여 ' ; ' 를 구분으로 값을 추출한다.


그러면 mSplit에는 값이 


mSplit[0] 에는 "aa" 가

mSplit[1] 에는 "bb" 가

mSplit[2] 에는 "cc" 가

mSplit[3] 에는 "dd" 가

mSplit[4] 에는 "ee" 가 


순차적으로 들어간다.


response.write Ubound(mSplit)&" => 배열의 갯수<br>"


Ubound(mSplit)는 배열의 갯수를 구한다. 값이 4가 나온다.

그럼 배열 0,1,2,3,4 해서 총 5개의 값이 들어있다.


for i=0 to Ubound(mSplit)

    response.write mSplit(i)&" :: i는 "&i&" 이다<br>"

next


위 for문을 찍어보면 

aa :: i는 0 이다
bb :: i는 1 이다
cc :: i는 2 이다
dd :: i는 3 이다
ee :: i는 4 이다


출력된다.


정리하자면  IsArray 는 배열인지 아닌지 구별하고

Ubound는 배열의 크기를 나타낸다.


Ubound는 또 다른 기능이 있다.

이 기능은 다음 시간에 정리해 보자.



'기존카테고리 > ASP' 카테고리의 다른 글

총갯수 구하기  (0) 2016.11.18
GetRows 함수  (0) 2016.07.07
2차배열 Ubound 함수  (0) 2016.07.07
Sub 과 Function 사용  (0) 2016.07.07
배열선언 Dim과 ReDim  (0) 2016.07.07