Oggetto Array
Aggiornamento: novembre 2007
Fornisce il supporto per le matrici expando di qualsiasi tipo di dati. Esistono tre forme del costruttore Array.
function Array( [size : int] )
function Array( [... varargs : Object[]] )
function Array( [array : System.Array )
Argomenti
size
Facoltativo. Dimensione della matrice. Poiché le matrici sono a base zero, gli indici degli elementi creati saranno compresi tra zero e size -1.varargs
Facoltativo. Matrice tipizzata contenente tutti i parametri passati al costruttore. I parametri sono utilizzati come primi elementi della matrice.array
Facoltativo. Matrice da copiare nella matrice da costruire.
Note
Se al costruttore Array viene passato un solo argomento che corrisponde a un valore numerico, tale valore dovrà essere un integer a 32 bit senza segno, ovvero qualsiasi integer minore di quattro miliardi circa. Il valore passato è la dimensione della matrice. Se il valore è un numero minore di zero o non è un valore integer, si verificherà un errore di runtime.
È possibile passare al costruttore Array una variabile del tipo di dati System.Array. In questo modo viene creata una matrice JScript che è la copia della matrice di input. System.Array deve essere a una sola dimensione.
Se al costruttore Array viene passato un solo valore che non è un numero né una matrice, la proprietà length della matrice verrà impostata su 1 e il valore del primo elemento della matrice (elemento 0) diventerà l'unico argomento passato. Se al costruttore vengono passati più argomenti, la lunghezza della matrice verrà impostata sul numero degli argomenti e questi saranno i primi elementi della nuova matrice.
Le matrici JScript sono matrici sparse, ovvero benché sia possibile allocare una matrice con numerosi elementi, solo gli elementi che contengono realmente dei dati esistono. La quantità di memoria utilizzata dalla matrice viene così ridotta.
L'oggetto Array interagisce con il tipo di dati System.Array. Di conseguenza, un oggetto Array può chiamare i metodi e le proprietà del tipo di dati System.Array e un tipo di dati System.Array può chiamare i metodi e le proprietà dell'oggetto Array. Inoltre, gli oggetti Array sono accettati dalle funzioni che accettano i tipi di dati System.Array e viceversa. Per ulteriori informazioni, vedere Membri di matrici.
Quando un oggetto Array viene passato a una funzione che accetta un tipo di dati System.Array o quando i metodi System.Array vengono chiamati da un oggetto Array, il contenuto dell'oggetto Array viene copiato. Pertanto, non è possibile modificare l'oggetto Array originale tramite i metodi, o il passaggio alle funzioni che accettano i tipi, System.Array. Solo i metodi Array non distruttivi possono essere chiamati su un tipo System.Array.
Suggerimento: |
---|
Gli oggetti Array sono particolarmente utili quando si desidera ottenere uno stack generico o un elenco di elementi e le prestazioni non rappresentano una priorità assoluta. Negli altri contesti è preferibile utilizzare i tipi di dati delle matrici tipizzate. L'utilizzo di una matrice tipizzata, le cui funzionalità sono molto simili a quelle dell'oggetto Array, consente inoltre indipendenza dai tipi, prestazioni migliori e più efficiente interazione con gli altri linguaggi. |
Nota: |
---|
L'oggetto Array interagisce con il tipo di dati System.DateTime di .NET Framework all'interno di JScript. Tuttavia, poiché l'oggetto Array viene fornito solamente da JScript e non deriva da un tipo .NET Framework, non è possibile utilizzare tale oggetto con altri linguaggi compatibili con CLS (Common Language Specification). Per tale motivo, durante l'annotazione del tipo di parametri e tipi restituiti dei metodi compatibili con CLS, assicurarsi di utilizzare il tipo di dati System.Array anziché l'oggetto Array. È possibile tuttavia utilizzare l'oggetto Array per l'annotazione del tipo di identificatori diversi dai parametri o dai tipi restituiti. Per ulteriori informazioni, vedere Scrittura di codice compatibile con CLS. |
Esempio
È possibile accedere ai singoli elementi della matrice utilizzando la notazione [ ]. Di seguito è riportato un esempio:
var my_array = new Array();
for (var i = 0; i < 10; i++) {
my_array[i] = i;
}
var x = my_array[4];
Dato che in Microsoft JScript le matrici sono a base zero, l'ultima istruzione dell'esempio precedente consente di accedere al quinto elemento della matrice, che contiene il valore 4.
Proprietà e metodi
Proprietà e metodi dell'oggetto Array