Класс ScriptObjectMirror
- java.lang.Object
-
- jdk.nashorn.api.scripting.AbstractJSObject
-
- jdk.nashorn.api.scripting.ScriptObjectMirror
- Все реализованные интерфейсы:
-
Map<String,Object>,Bindings,JSObject
@Deprecated(since="11",
forRemoval=true)
public final class ScriptObjectMirror
extends AbstractJSObject
implements Bindings Объект-зеркало, который оборачивает заданный объект Nashorn Script.
- С:
- 1.8u40
Вложенные классы
Вложенные классы/интерфейсы, объявленные в интерфейсе java.util.Map
Map.Entry<K,V> Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
Object | callMember(String functionName,
Object... args) | Устаревшее, подлежит удалению: Этот элемент API может быть удален в будущей версии. Вызов члена функции |
boolean | delete(Object key) | Устаревшее, подлежит удалению: Этот элемент API может быть удален в будущей версии. Удаление свойства из этого объекта. |
ScriptObjectMirror | freeze() | Устаревшее, подлежит удалению: Этот элемент API может быть удален в будущей версии. Реализация ECMAScript 15.2.39 - freeze. |
String[] | getOwnKeys(boolean all) | Устаревшее, подлежит удалению: Этот элемент API может быть удален в будущей версии. Возвращает массив собственных ключей свойств, связанных с объектом. |
Object | getOwnPropertyDescriptor(String key) | Устаревшее, подлежит удалению: Этот элемент API может быть удален в будущей версии. ECMAScript 8.12.1 [[GetOwnProperty]] (P) |
Object | getProto() | Устаревшее, подлежит удалению: Этот элемент API может быть удален в будущей версии. Возвращает __proto__ этого объекта. |
static boolean | identical(Object obj1,
Object obj2) | Устаревшее, подлежит удалению: Этот элемент API может быть удален в будущей версии. Являются ли заданные объекты зеркалами одного и того же базового объекта? |
boolean | isExtensible() | Устаревшее, подлежит удалению: Этот элемент API может быть удален в будущей версии. Проверка, является ли этот скриптовый объект расширяемым. |
boolean | isFrozen() | Устаревшее, подлежит удалению: Этот элемент API может быть удален в будущей версии. Проверка, заморожен ли этот скриптовый объект. |
boolean | isSealed() | Устаревшее, подлежит удалению: Этот элемент API может быть удален в будущей версии. Проверка, запечатан ли этот скриптовый объект. |
static boolean | isUndefined(Object obj) | Устаревшее, подлежит удалению: Этот элемент API может быть удален в будущей версии. Утилита для проверки, является ли заданный объект значением ECMAScript undefined. |
ScriptObjectMirror | preventExtensions() | Устаревшее, подлежит удалению: Этот элемент API может быть удален в будущей версии. Отметить этот скриптовый объект как не расширяемый. |
ScriptObjectMirror | seal() | Устаревшее, подлежит удалению: Этот элемент API может быть удален в будущей версии. ECMAScript 15.2.3.8 - реализация seal. |
void | setIndexedPropertiesToExternalArrayData(ByteBuffer buf) | Устаревшее, подлежит удалению: Этот элемент API может быть удален в будущей версии. Расширение Nashorn: setIndexedPropertiesToExternalArrayData. |
void | setProto(Object proto) | Устаревшее, подлежит удалению: Этот элемент API может быть удален в будущей версии. Установить __proto__ этого объекта. |
<T> T | to(Class<T> type) | Устаревшее, подлежит удалению: Этот элемент API может быть удален в будущей версии. Утилита для преобразования этого скриптового объекта в заданный тип. |
static Object | unwrap(Object obj,
Object homeGlobal) | Устаревшее, подлежит удалению: Этот элемент API может быть удален в будущей версии. Развернуть скриптовый объект-зеркало, если необходимо. |
static Object[] | unwrapArray(Object[] args,
Object homeGlobal) | Устаревшее, подлежит удалению: Этот элемент API может быть удален в будущей версии. Развернуть массив скриптовых объектов-зеркал, если необходимо. |
static Object | wrap(Object obj,
Object homeGlobal) | Устаревшее, подлежит удалению: Этот элемент API может быть удален в будущей версии. Создать скриптовый объект-зеркало для заданного объекта, если необходимо. |
static Object[] | wrapArray(Object[] args,
Object homeGlobal) | Устаревшее, подлежит удалению: Этот элемент API может быть удален в будущей версии. Оборачивает массив объектов в скриптовые объекты-зеркала, если необходимо. |
static Object | wrapAsJSONCompatible(Object obj,
Object homeGlobal) | Устаревшее, подлежит удалению: Этот элемент API может быть удален в будущей версии. Создать скриптовый объект-зеркало для заданного объекта, если необходимо. |
Методы, унаследованные от класса jdk.nashorn.api.scripting.AbstractJSObject
call, eval, getDefaultValue, getMember, getSlot, hasMember, hasSlot, isArray, isFunction, isInstance, isStrictFunction, keySet, newObject, removeMember, setMember, setSlot, toNumber, values Методы, унаследованные от класса java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Методы, унаследованные от интерфейса javax.script.Bindings
containsKey, get, put, putAll, remove Методы, унаследованные от интерфейса jdk.nashorn.api.scripting.JSObject
getClassName, getDefaultValue, isInstanceOf Методы, унаследованные от интерфейса java.util.Map
clear, compute, computeIfAbsent, computeIfPresent, containsValue, entrySet, equals, forEach, getOrDefault, hashCode, isEmpty, keySet, merge, putIfAbsent, remove, replace, replace, replaceAll, size, values Методы
callMember
public Object callMember(String functionName,
Object... args) Вызов члена функции
- Параметры:
-
functionName- имя функции -
args- аргументы - Возвращает:
- значение возврата функции
setIndexedPropertiesToExternalArrayData
public void setIndexedPropertiesToExternalArrayData(ByteBuffer buf)
Расширение Nashorn: setIndexedPropertiesToExternalArrayData. Устанавливает индексированные свойства, доступные из заданного буфера nio ByteBuffer.
- Параметры:
-
buf- внешний буфер — должен быть буфером nio ByteBuffer
delete
public boolean delete(Object key)
Удаление свойства из этого объекта.
- Параметры:
-
key- свойство для удаления - Возвращает:
- успешно ли было удаление
getProto
public Object getProto()
Возвращение __proto__ этого объекта.
- Возвращает:
- объект __proto__.
setProto
public void setProto(Object proto)
Установка __proto__ этого объекта.
- Параметры:
-
proto- новый прототип для этого объекта
getOwnPropertyDescriptor
public Object getOwnPropertyDescriptor(String key)
ECMA 8.12.1 [[GetOwnProperty]] (P)
- Параметры:
-
key- ключ свойства - Возвращает:
- Возвращает описание свойства названного собственного свойства этого объекта или undefined, если отсутствует.
getOwnKeys
public String[] getOwnKeys(boolean all)
Возвращает массив собственных ключей свойств, связанных с объектом.
- Параметры:
-
all- true, если включать неперечисляемые ключи. - Возвращает:
- Массив ключей.
preventExtensions
public ScriptObjectMirror preventExtensions()
Помечает этот объект скрипта как нерасширяемый.
- Возвращает:
- объект после того, как он был сделан нерасширяемым
isExtensible
public boolean isExtensible()
Проверка, является ли этот объект скрипта расширяемым.
- Возвращает:
- true, если расширяемый
seal
public ScriptObjectMirror seal()
Реализация ECMAScript 15.2.3.8 - seal
- Возвращает:
- запечатанный объект скрипта
isSealed
public boolean isSealed()
Проверка, является ли этот объект скрипта запечатанным.
- Возвращает:
- true, если запечатан
freeze
public ScriptObjectMirror freeze()
Реализация ECMAScript 15.2.39 - замораживание. Замораживает этот объект скрипта.
- Возвращает:
- замороженный объект скрипта
isFrozen
public boolean isFrozen()
Проверка, является ли этот объект скрипта замороженным.
- Возвращает:
- true, если замороженный
isUndefined
public static boolean isUndefined(Object obj)
Утилита для проверки, является ли данный объект значением ECMAScript undefined.
- Параметры:
-
obj- объект для проверки - Возвращает:
- true, если 'obj' имеет значение ECMAScript undefined
to
public <T> T to(Class<T> type)
Утилита для преобразования этого объекта скрипта к заданному типу.
- Типы параметров:
-
T- целевой тип для преобразования - Параметры:
-
type- целевой тип для преобразования - Возвращает:
- преобразованный объект
wrap
public static Object wrap(Object obj,
Object homeGlobal) Создаёт зеркальный объект скрипта для данного объекта, если необходимо.
- Параметры:
-
obj- объект, который нужно обернуть/преобразовать -
homeGlobal- глобальная область, к которой принадлежит этот объект. - Возвращает:
- обернутый/преобразованный объект
wrapAsJSONCompatible
public static Object wrapAsJSONCompatible(Object obj,
Object homeGlobal) Создаёт зеркальный объект скрипта для данного объекта, если необходимо. Созданный оболочка будет реализовывать интерфейс Java List , если obj это JavaScript Array объект; это совместимо с ожиданиями Java библиотек JSON. Массивы, полученные через его свойства (по цепочке), также будут реализовывать интерфейс списка.
- Параметры:
-
obj- объект, который нужно обернуть/преобразовать -
homeGlobal- глобальная область, к которой принадлежит этот объект. - Возвращает:
- обернутый/преобразованный объект
unwrap
public static Object unwrap(Object obj,
Object homeGlobal) Развернуть зеркальный объект скрипта, если нужно.
- Параметры:
-
obj- объект, который нужно разворачивать -
homeGlobal- глобальная область, к которой принадлежит этот объект - Возвращает:
- разворачиваемый объект
wrapArray
public static Object[] wrapArray(Object[] args,
Object homeGlobal) Оборачивает массив объектов в зеркальные объекты скрипта, если нужно.
- Параметры:
-
args- массив, который нужно разворачивать -
homeGlobal- глобальная область, к которой принадлежит этот объект - Возвращает:
- обёрнутый массив
unwrapArray
public static Object[] unwrapArray(Object[] args,
Object homeGlobal) Развернуть массив зеркальных объектов скрипта, если нужно.
- Параметры:
-
args- массив, который нужно разворачивать -
homeGlobal- глобальная область, к которой принадлежит этот объект - Возвращает:
- разворачиваемый массив
identical
public static boolean identical(Object obj1,
Object obj2) Являются ли заданные объекты зеркалами одного и того же базового объекта?
- Параметры:
-
obj1- первый объект -
obj2- второй объект - Возвращает:
- true, если obj1 и obj2 являются идентичными объектами скрипта или зеркалами.
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/jdk.scripting.nashorn/jdk/nashorn/api/scripting/ScriptObjectMirror.html