54b59e3c

Конвертация из Java в JavaScript


Значения, переданные из Java в JavaScript конвертируются так:

  • Java byte, char, short, int, long, float и double конвертируются в числа JavaScript.

  • Java boolean конвертируется в JavaScript boolean.
  • Объект класса netscape.javascript.JSObject конвертируется в оригинальный JavaScript-объект.
  • Java-массивы конвертируются в объект JavaScript pseudo-Array; этот объект ведёт себя так же, как объект JavaScript Array: Вы можете иметь к нему доступ с синтаксисом arrayName[index] (где index это целое число) и определять его размер с помощью arrayName.length.

  • Java-объект любого иного класса конвертируется в JavaScript-оболочку, которая может использоваться для доступа к методам и полям Java-объекта:

  • Конвертация оболочки в строку вызывает метод toString объекта-оригинала.

  • Конвертация в число вызывает метод doubleValue, если возможно, иначе - терпит неудачу.
  • Конвертация в boolean вызывает метод booleanValue, если возможно, иначе - терпит неудачу.

  • Обратите внимание, что экземпляры java.lang.Double и java.lang.Integer конвертируются в объекты JavaScript, а не в числа JavaScript. Аналогично, экземпляры java.lang.String также конвертируются в JavaScript-объекты, а не в строки JavaScript.

    Java String -объекты также соответствуют оболочкам JavaScript. Если Вы вызываете JavaScript-метод, который требует строки JavaScript, и передаёте его данной оболочке, Вы получите ошибку. Вместо этого конвертируйте оболочку в строку JavaScript, присоединяя к ней пустую строку, как показано здесь:

    var JavaString = JavaObj.methodThatReturnsAString(); var JavaScriptString = JavaString + "";

    1

    2



    Содержание раздела