Join MDN and developers like you at Mozilla's View Source conference, 12-14 September in Berlin, Germany. Learn more at https://viewsourceconf.org

JavaArray

Podsumowanie

Obiekt główny

Zapakowana tablica Javy, do której dostęp uzyskuje się poprzez kod JavaScript jest członkiem typu JavaArray.

Tworzone przez

Jakąkolwiek metodę Javy, która zwraca tablicę. W dodatku, możesz stworzyć obiekt JavaArray z dowolnym typem danych używając metody newInstance klasy Array:

public static Object newInstance(Class componentType,
   int length)
   throws NegativeArraySizeException

Opis

Obiekt JavaArray jest wystąpieniem tablicy Javy, która jest stworzona wewnątrz kody JavaScript lub do niego przekazana. JavaArray jest opakowaniem (ang. wrapper) dla tej instancji; wszystkie referencje do niej są robione przez JavaArray.

W JavaScript 1.4 i późniejszym, parametr componentType jest albo obiektem typu JavaClass reprezentującym typ tablicy albo obiektem klasowym, jak na przykład obiekt zwracany przez java.lang.Class.forName. W JavaScript 1.3 i wcześniejszych, componentType musi być obiektem klasowym.

Użyj indeksy oparte na zerze, aby uzyskać dostęp do obiektu JavaArray, tak samo jak robisz to w Javie. Na przykład:

var javaString = new java.lang.String("Hello world!");
var byteArray = javaString.getBytes();
byteArray[0] // zwraca 72
byteArray[1] // zwraca 101

Jakiekolwiek dane Javy przeniesione do JavaScriptu są konwertowane do typów danych JavaScriptu. Kiedy obiekt JavaArray jest przekazany z powrotem do Javy, obiekt jest rozpakowywany i może być użyty przez kod Javy. Zobacz Przewodnik po języku JavaScript 1.5, aby uzyskać więcej informacji na temat konwersji typów danych.

W JavaScripcie 1.4 i późniejszym, metody java.lang.Object są dziedziczone przez JavaArray.

Zgodność wsteczna

JavaScript 1.3 i wersje wcześniejsze

Metody java.lang.Object nie są dziedziczone przez JavaArray. W dodatku, metoda toString jest dziedziczona z obiektu Object i zwraca następującą wartość:

[object JavaArray]

Musisz określić klasę obiektu, tak jak jeden zwracany przez java.lang.Object.forName, dla parametru componentType, newInstance kiedy użyjesz tej metody do utworzenia tablicy. Nie możesz użyć obiektu JavaClass dla parametru componentType.

Własności

length: Numer elementu w Java array reprezentowana przez JavaArray.

Metody

toString: W JavaScript 1.4, ta metoda ta nie jest uwzględniana przez odziedziczona metodę java.lang.Object.toString. W JavaScript 1.3 lub lub wcześniejszym, metoda ta zwraca ciąg znaków (stringa) identyfikującego obiekt jako JavaArray.

W JavaScript 1.4 lub późniejszym, JavaArray dziedziczy również metody z superklasy tablicy Javy, java.lang.Object.

Przykłady

Przykład: Tworzenie JavaArray w JavaScript

W tym przykładzie, JavaArray tablicaBitowa jest stworzona przez metodę java.lang.String.getBytes, która zwraca tablicę.

var stringJavy = new java.lang.String("Witaj świecie!");
var tablicaBitowa = stringJavy.getBytes();

Przykład: Tworzenie JavaArray w JavaScript z metodą newInstance

W JavaScript 1.4, możesz użyć obiekt JavaClass jako argument dla metody newInstance, która tworzy tablicę, jak jest to pokazane w następującym kodzie:

var dogs = java.lang.reflect.Array.newInstance(java.lang.String, 5);

W JavaScript 1.1, użyj obiektu klasy, zwracanego java.lang.Class.forName jako argument dla metody newInstance, jak pokazuje następujący kod:

var dataType = java.lang.Class.forName("java.lang.String");
var dogs = java.lang.reflect.Array.newInstance(dataType, 5);

Autorzy i etykiety dokumentu

 Autorzy tej strony: teoli, Mgjbot, Ptak82, VooEak
 Ostatnia aktualizacja: teoli,