# JsObject class

Proxies a JavaScript object to Dart.

The properties of the JavaScript object are accessible via the `[]` and `[]=` operators. Methods are callable via callMethod.

Implemented by
  - JsArray
  - JsFunction

## Constructors

JsObject(JsFunction constructor, [ List arguments ])
  Constructs a new JavaScript object from `constructor` and returns a proxy to it.
  factory
JsObject.fromBrowserObject(dynamic object)
  Constructs a JsObject that proxies a native Dart object; for expert use only. [...]
  factory
JsObject.jsify(dynamic object)
  Recursively converts a JSON-like collection of Dart objects to a collection of JavaScript objects and returns a JsObject proxy to it. [...]
  factory

## Properties

hashCode → int
  The hash code for this object. [...]
  read-only
runtimeType → Type
  A representation of the runtime type of the object.
  read-only, inherited

## Methods

callMethod(dynamic method, [ List args ]) → dynamic
  Calls `method` on the JavaScript object with the arguments `args` and returns the result. [...]
deleteProperty(dynamic property) → void
  Removes `property` from the JavaScript object. [...]
hasProperty(dynamic property) → bool
  Returns `true` if the JavaScript object contains the specified property either directly or though its prototype chain. [...]
instanceof(JsFunction type) → bool
  Returns `true` if the JavaScript object has `type` in its prototype chain. [...]
toString() → String
  Returns the result of the JavaScript objects `toString` method.
noSuchMethod(Invocation invocation) → dynamic
  Invoked when a non-existent method or property is accessed. [...]
  inherited

## Operators

operator ==(dynamic other) → bool
  The equality operator. [...]
operator [](dynamic property) → dynamic
  Returns the value associated with `property` from the proxied JavaScript object. [...]
operator []=(dynamic property, dynamic value) → void
  Sets the value associated with `property` on the proxied JavaScript object. [...]