Compartilhar via


Declaração de matriz

Como ocorre com todos os outros dados JScript, variáveis podem armazenar os arrays. Anotação de tipo pode especificar que uma variável deve conter um objeto array ou uma matriz tipificada, mas ele não fornece uma matriz inicial. Para armazenar uma matriz em uma variável, você deve declarar uma matriz e atribuí-la a essa variável.

Declarando um objeto de matriz JScript cria um novo Array o objeto, ao declarar um tipo matriz reserva uma seção de memória suficiente para armazenar todos os elementos da matriz. Os dois tipos de arrays podem ser declarados usando a nova operador explicitamente construir uma nova matriz, ou usando um literal de matriz.

Declaração de matriz com o operador new

Para declarar um novo JScript Array o objeto, você pode usar o nova operador com a Array construtor. Desde dinamicamente, você pode adicionar membros a uma matriz de JScript, você não precisará especificar um tamanho inicial para a matriz. Neste exemplo, a1 é atribuída uma matriz de comprimento zero.

var a1 = new Array();

Para atribuir um período inicial para a matriz criada com o Array construtor, passar um inteiro para o construtor de matriz. O comprimento da matriz deve ser zero ou positiva. O código a seguir atribui uma matriz de comprimento 10 a2.

var a2 = new Array(10);

Se mais de um parâmetro ou um único parâmetro numérico é passado para o Array construtor, a matriz resultante contém todos os parâmetros como os elementos de matriz. Por exemplo, o código a seguir cria uma matriz em qual elemento 0 é o número 10, o elemento 1 é a seqüência de caracteres "Hello" e elemento 2 é a data atual.

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

O nova operador também pode declarar matrizes digitados. Desde que os arrays digitados não podem aceitar os elementos adicionados dinamicamente, a declaração deve especificar o tamanho da matriz. O construtor para arrays digitados usa colchetes em vez do tamanho da matriz entre parênteses. Por exemplo, o código a seguir declara uma matriz de cinco inteiros.

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

O nova operador também pode declarar matrizes multidimensionais. O exemplo a seguir declara uma matriz de três, quatro, cinco de inteiros.

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

Quando declarar uma matriz de matrizes, o array de base deve ser declarado antes de declarar subarrays; eles não podem todos ser declarados ao mesmo tempo. Isso proporciona flexibilidade para determinar os tamanhos de subarrays. Neste exemplo, o primeiro subarray tem comprimento 1, o segundo tem comprimento 2 e assim por diante.

// 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];

Declaração de matriz com literais de matriz

Uma maneira alternativa para declarar e inicializar matrizes simultaneamente é usar literais de matriz. Um literal de matriz representa um JScript Array. Como matrizes de JScript interoperam com arrays digitados, no entanto, literais também podem ser usados para inicializar matrizes digitados. Para obter mais informações, consulte Dados da matriz.

Literais de matriz facilmente podem inicializar matrizes unidimensionais. Observe que o compilador tentará converter os dados da matriz literal para o tipo correto quando atribuído a uma matriz tipificada. Neste exemplo, uma matriz de literal é atribuída a uma matriz de JScript e uma matriz tipificada.

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

Literais de matriz também podem inicializar matrizes de matrizes. No exemplo a seguir, uma matriz de duas matrizes de inteiros inicializa a matriz de JScript e o array digitado.

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

Literais de matriz não podem inicializar digitados de matrizes multidimensionais.

Consulte também

Referência

Operador New

Conceitos

Dados de matriz

Objeto Array de JScript

Outros recursos

Matrizes de JScript