JSArray<T extends JSAny?> extension type

A JavaScript Array.

Because JSArray is an extension type, T is only a static guarantee and the array does not necessarily only contain T elements. For example:

@JS()
external JSArray<JSNumber> get array;

array is not actually checked to ensure it contains instances of JSNumber when called.

T may introduce additional checking elsewhere, however. When accessing elements of JSArray with type T, there is a check to ensure the element is a T to ensure soundness. Similarly, when converting to a List<T>, casts may be introduced to ensure that it is indeed a List<T>.

on
  • dynamic
Implemented types
Available extensions
Annotations
  • @JS('Array')

Constructors

JSArray()
Creates an empty JavaScript Array.
JSArray.withLength(int length)
Creates a JavaScript Array of size length with no elements.

Properties

hashCode int
The hash code for this object.
no setterinherited
length int
The length in elements of this Array.
getter/setter pair
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
toDart List<T>

Available on JSArray<T>, provided by the JSArrayToList extension

Converts this JSArray to a List by either casting or wrapping it.
no setter

Methods

callMethod<R extends JSAny?>(JSAny method, [JSAny? arg1, JSAny? arg2, JSAny? arg3, JSAny? arg4]) → R

Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension

Calls method on this JSObject with up to four arguments.
callMethodVarArgs<R extends JSAny?>(JSAny method, [List<JSAny?>? arguments]) → R

Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension

Calls method on this JSObject with a variable number of arguments.
delete(JSAny property) JSBoolean

Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension

Deletes the property with key property from this JSObject.
getProperty<R extends JSAny?>(JSAny property) → R

Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension

The value of the property key property of this JSObject.
has(String property) bool

Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension

Shorthand helper for hasProperty to check whether this JSObject contains the property key property, but takes and returns a Dart value.
hasProperty(JSAny property) JSBoolean

Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension

Whether or not this JSObject contains the property key property.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
setProperty(JSAny property, JSAny? value) → void

Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension

Write the value of property key property of this JSObject.
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited
operator [](int position) → T
The value at position in this Array.
operator [](String property) JSAny?

Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension

Shorthand helper for getProperty to get the value of the property key property of this JSObject, but takes and returns a Dart value.
operator []=(int position, T value) → void
Sets the value at position in this Array.
operator []=(String property, JSAny? value) → void

Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension

Shorthand helper for setProperty to write the value of the property key property of this JSObject, but takes a Dart value.

Static Methods

from<T extends JSAny>(JSObject arrayLike) JSArray<T>
Creates a new, shallow-copied JavaScript Array instance from a JavaScript iterable or array-like object.