Package jsinterop.base
Class Js
- java.lang.Object
-
- jsinterop.base.Js
-
public final class Js extends java.lang.ObjectUtilities to provide access to JavaScript language constructs that are not available in pure Java.Note that this class avoids providing replacements for stuff that is already available via a pure Java or Elemental and enforce safe (runtime-checked) coding practices.
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static <T extends @Nullable java.lang.Object>
TandAlso(T obj1, T obj2)Applies JavaScript logical "and" operator (&&) on given objects.static JsArrayLike<@Nullable java.lang.Object>arguments()static @Nullable AnyasAny(@Nullable java.lang.Object obj)static @Nullable Any[]asArray(java.lang.Object obj)static @Nullable JsArrayLike<@Nullable java.lang.Object>asArrayLike(@Nullable java.lang.Object obj)ReturnsJsArrayLikeview of provided array-like object.static booleanasBoolean(java.lang.Object obj)static byteasByte(java.lang.Object obj)static charasChar(java.lang.Object obj)static <T> JsConstructorFn<T>asConstructorFn(java.lang.Class<T> clazz)static doubleasDouble(java.lang.Object obj)static floatasFloat(java.lang.Object obj)static intasInt(java.lang.Object obj)static longasLong(java.lang.Object obj)static @Nullable JsPropertyMap<@Nullable java.lang.Object>asPropertyMap(@Nullable java.lang.Object obj)ReturnsJsPropertyMapview of provided object.static shortasShort(java.lang.Object obj)static java.lang.StringasString(java.lang.Object obj)static <T extends @Nullable java.lang.Object>
Tcast(@Nullable java.lang.Object obj)Performs checked cast to lefthand-side type.static booleancoerceToBoolean(@Nullable java.lang.Object b)Coerces any object to boolean using!!operation.static doublecoerceToDouble(@Nullable java.lang.Object d)Coerces any object to number using+operation.static intcoerceToInt(@Nullable java.lang.Object d)Coerces any object to 32 bit signed number using|0operation.static voiddebugger()static JsPropertyMap<@Nullable java.lang.Object>global()static booleanisFalsy(@Nullable java.lang.Object obj)static booleanisTripleEqual(@Nullable java.lang.Object o1, @Nullable java.lang.Object o2)Returnstrueif two objects are same.static booleanisTruthy(@Nullable java.lang.Object obj)static <T extends @Nullable java.lang.Object>
TorElse(T obj1, T obj2)Applies JavaScript logical "or" operator (||) on given objects.static java.lang.Stringtypeof(@Nullable java.lang.Object obj)static <T extends @Nullable java.lang.Object>
TuncheckedCast(@Nullable java.lang.Object obj)Performs unchecked cast to lefthand-side type.static @Nullable java.lang.Objectundefined()
-
-
-
Method Detail
-
undefined
@JsProperty(namespace="<window>", name="undefined") public static @Nullable java.lang.Object undefined()
-
arguments
@JsProperty(namespace="<window>", name="arguments") public static JsArrayLike<@Nullable java.lang.Object> arguments()
-
debugger
@JsProperty(namespace="<window>", name="debugger") public static void debugger()
-
typeof
@JsMethod(namespace="<window>") public static java.lang.String typeof(@Nullable java.lang.Object obj)
-
global
public static JsPropertyMap<@Nullable java.lang.Object> global()
-
asConstructorFn
public static <T> JsConstructorFn<T> asConstructorFn(java.lang.Class<T> clazz)
-
asAny
public static @Nullable Any asAny(@Nullable java.lang.Object obj)
-
asPropertyMap
public static @Nullable JsPropertyMap<@Nullable java.lang.Object> asPropertyMap(@Nullable java.lang.Object obj)
ReturnsJsPropertyMapview of provided object.
-
asArrayLike
public static @Nullable JsArrayLike<@Nullable java.lang.Object> asArrayLike(@Nullable java.lang.Object obj)
ReturnsJsArrayLikeview of provided array-like object.
-
asArray
public static @Nullable Any[] asArray(java.lang.Object obj)
-
asString
public static java.lang.String asString(java.lang.Object obj)
-
asBoolean
public static boolean asBoolean(java.lang.Object obj)
-
asDouble
public static double asDouble(java.lang.Object obj)
-
asFloat
public static float asFloat(java.lang.Object obj)
-
asLong
public static long asLong(java.lang.Object obj)
-
asInt
public static int asInt(java.lang.Object obj)
-
asShort
public static short asShort(java.lang.Object obj)
-
asChar
public static char asChar(java.lang.Object obj)
-
asByte
public static byte asByte(java.lang.Object obj)
-
cast
public static <T extends @Nullable java.lang.Object> T cast(@Nullable java.lang.Object obj)
Performs checked cast to lefthand-side type.This is useful for cases when Java won't allow you otherwise, like casting from a native interface to a final Java class (like String).
-
uncheckedCast
public static <T extends @Nullable java.lang.Object> T uncheckedCast(@Nullable java.lang.Object obj)
Performs unchecked cast to lefthand-side type.This method exists in order to lie to the type system, it is not an optimization. You should *ALWAYS* prefer regular casting over this which also optimizes for production. Using this method can leak incorrect types to the rest of the system which will result in hard to debug problems.
-
andAlso
public static <T extends @Nullable java.lang.Object> T andAlso(T obj1, T obj2)Applies JavaScript logical "and" operator (&&) on given objects.
-
orElse
public static <T extends @Nullable java.lang.Object> T orElse(T obj1, T obj2)Applies JavaScript logical "or" operator (||) on given objects.
-
isTruthy
public static boolean isTruthy(@Nullable java.lang.Object obj)
-
isFalsy
public static boolean isFalsy(@Nullable java.lang.Object obj)
-
isTripleEqual
public static boolean isTripleEqual(@Nullable java.lang.Object o1, @Nullable java.lang.Object o2)Returnstrueif two objects are same.This method mostly behaves similar to Java
==operator except that it doesn't returntruefornull==undefinedcomparison.
-
coerceToDouble
public static double coerceToDouble(@Nullable java.lang.Object d)
Coerces any object to number using+operation.
-
coerceToInt
public static int coerceToInt(@Nullable java.lang.Object d)
Coerces any object to 32 bit signed number using|0operation.
-
coerceToBoolean
public static boolean coerceToBoolean(@Nullable java.lang.Object b)
Coerces any object to boolean using!!operation.
-
-