배열 선언

JScript의 모든 다른 데이터와 마찬가지로 변수에 배열을 저장할 수 있습니다. 형식 주석에서는 변수가 배열 개체 또는 형식화된 배열을 포함해야 한다는 것은 지정하지만, 초기 배열을 제공하지는 않습니다. 변수에 배열을 저장하려면 배열을 선언한 다음 해당 변수에 배열을 할당해야 합니다.

JScript 배열 개체를 선언하면 새 Array 개체가 만들어지는 반면, 형식화된 배열을 선언하면 배열의 모든 요소를 저장할 수 있을 만큼 큰 메모리 섹션이 예약됩니다. 두 배열 형식 모두 new 연산자를 통해 새 배열을 명시적으로 생성하거나 배열 리터럴을 사용하여 선언할 수 있습니다.

new 연산자를 사용한 배열 선언

새 JScript Array 개체를 선언하려면 Array 생성자와 함께 new 연산자를 사용합니다. JScript 배열에 동적으로 멤버를 추가할 수 있으므로 배열의 초기 크기를 지정할 필요가 없습니다. 다음 예에서는 a1에 길이가 0인 배열을 할당합니다.

var a1 = new Array();

Array 생성자를 사용하여 만든 배열에 초기 길이를 할당하려면 배열 생성자에 정수를 전달합니다. 배열 길이는 0이거나 양수여야 합니다. 다음 코드에서는 a2에 길이가 10인 배열을 할당합니다.

var a2 = new Array(10);

두 개 이상의 매개 변수나 숫자가 아닌 매개 변수 한 개가 Array 생성자에 전달되는 경우, 결과 배열에는 모든 매개 변수가 배열 요소로 포함됩니다. 예를 들어, 다음 코드에서는 요소 0은 숫자 10, 요소 1은 문자열 "Hello", 요소 2는 현재 날짜인 배열을 만듭니다.

var a3 = new Array(10, "Hello", Date());

new 연산자를 사용하여 형식화된 배열도 선언할 수 있습니다. 형식화된 배열은 동적으로 추가된 요소를 받아들일 수 없으므로 선언에서 배열의 크기를 지정해야 합니다. 형식화된 배열을 위한 생성자는 배열 크기를 표시할 때 괄호 대신 대괄호를 사용합니다. 예를 들어, 다음 코드에서는 5개의 정수로 이루어진 배열을 선언합니다.

var i1 : int[] = new int[5];

new 연산자는 다차원 배열도 선언할 수 있습니다. 다음 예제에서는 3X4X5 정수 배열을 선언합니다.

var i2 : int[,,] = new int[3,4,5];

배열의 배열을 선언할 때는 하위 배열을 선언하기 전에 기본 배열을 선언해야 하며 두 가지를 동시에 선언할 수는 없습니다. 이렇게 하면 하위 배열의 크기를 융통성있게 결정할 수 있습니다. 다음 예제에서는 첫 번째 하위 배열의 길이를 1로, 두 번째 하위 배열의 길이를 2로 하는 식으로 선언합니다.

// First, declare a typed array of type int[], and initialize it.
var i3 : int[][] = new (int[])[4];
// Second, initialize the subarrays.
for(var i=0; i<4; i++)
   i3[i] = new int[i+1];

배열 리터럴을 사용한 배열 선언

배열을 선언하고 동시에 초기화하는 다른 방법은 배열 리터럴을 사용하는 것입니다. 배열 리터럴은 JScript Array를 나타냅니다. 그러나 JScript 배열은 형식화된 배열과 상호 작용하므로 리터럴을 사용하여 형식화된 배열을 초기화할 수도 있습니다. 자세한 내용은 배열 데이터를 참조하십시오.

배열 리터럴은 1차원 배열을 쉽게 초기화할 수 있습니다. 컴파일러에서는 배열 리터럴의 데이터를 형식화된 배열에 할당할 때 올바른 형식으로 변환하려고 시도합니다. 다음 예제에서는 JScript 배열과 형식화된 배열에 리터럴 배열을 할당합니다.

var al1 : Array = [1,2,"3"];
var il1 : int[] = [1,2,"3"];

배열 리터럴은 배열의 배열도 초기화할 수 있습니다. 다음 예제에서는 두 개의 정수 배열로 이루어진 배열이 JScript 배열과 형식화된 배열을 모두 초기화합니다.

var al1 : Array = [[1,2,3],[4,5,6]];
var il1 : int[][] = [[1,2,3],[4,5,6]];

배열 리터럴은 다차원의 형식화된 배열은 초기화할 수 없습니다.

참고 항목

참조

new 연산자

개념

배열 데이터

JScript Array 개체

기타 리소스

JScript 배열