dart:js_interop_unsafe library

Utility methods to manipulate JavaScript objects dynamically.

This library is typically meant to be used when the names of properties or methods are not known statically. This library is similar to dart:js_util, except the methods here are extension methods that use JS types. This allows code using these functions to also be compiled to WebAssembly.

In general, prefer to write JS interop interfaces and external static interop members using dart:js_interop. This library is meant to work around issues and help with migration from older JS interop libraries.


As the name suggests, usage of this library can be unsafe. This means that safe usage of these methods cannot necessarily be verified statically. Prefer using statically analyzable values like constants or literals for property or method names so that usage can be verified. This library should be used cautiously and only when the same effect cannot be achieved with static interop.


JSFunctionUnsafeUtilExtension on JSFunction
Utility methods to call JSFunctions as constructors.
JSObjectUnsafeUtilExtension on JSObject
Utility methods to check, get, set, and call properties on a JSObject.