Class
JSObject
@dynamicMemberLookup
public class JSObject: Equatable
JSObject represents an object in JavaScript and supports dynamic member lookup.
Any member access like object.foo will dynamically request the JavaScript and Swift
runtime bridge library for a member with the specified name in this object.
And this object supports to call a member method of the object.
e.g.
let document = JSObject.global.document.object!
let divElement = document.createElement!("div")
The lifetime of this object is managed by the JavaScript and Swift runtime bridge library with reference counting system.
Relationships
Subclasses
JSOneshotClosureJSOneshotClosureis a JavaScript function that can be called only once.JSClosureJSClosurerepresents a JavaScript function the body of which is written in Swift. This type can be passed as a callback handler to JavaScript functions.JSFunctionJSFunctionrepresents a function in JavaScript and supports new object instantiation. This type can be callable as a function usingcallAsFunction.
Conforms To
CustomStringConvertibleEquatableHashable
Properties
`throwing`
public var `throwing`: JSThrowingObject
A modifier to call methods as throwing methods capturing this
const animal = {
validateAge: function() {
if (this.age < 0) {
throw new Error("Invalid age");
}
}
}
let animal = JSObject.global.animal.object!
try animal.throwing.validateAge!()
global
public static let global
A JSObject of the global scope object.
This allows access to the global properties and global names by accessing the JSObject returned.
description
public var description: String
Methods
isInstanceOf(_:)
public func isInstanceOf(_ constructor: JSFunction) -> Bool
Return true if this value is an instance of the passed constructor function.
Parameters
| Name | Type | Description |
|---|---|---|
| constructor | JSFunction |
The constructor function to check. |
Returns
The result of instanceof in the JavaScript environment.
construct(from:)
public class func construct(from value: JSValue) -> Self?
jsValue()
public func jsValue() -> JSValue
hash(into:)
public func hash(into hasher: inout Hasher)
Hashes the essential components of this value by feeding them into the given hasher.
Parameters
| Name | Type | Description |
|---|---|---|
| hasher | inout Hasher |
The hasher to use when combining the components of this instance. |