Expand description
Bindings to JavaScript’s standard, built-in objects, including their methods and properties.
This does not include any Web, Node, or any other JS environment APIs. Only the things that are guaranteed to exist in the global scope by the ECMAScript standard.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects
§A Note About camelCase, snake_case, and Naming Conventions
JavaScript’s global objects use camelCase naming conventions for functions
and methods, but Rust style is to use snake_case. These bindings expose
the Rust style snake_case name. Additionally, acronyms within a method
name are all lower case, where as in JavaScript they are all upper case. For
example, decodeURI in JavaScript is exposed as decode_uri in these
bindings.
§A Note About toString and to_js_string
JavaScript’s toString() method is exposed as to_js_string() in these
bindings to avoid confusion with Rust’s ToString trait and its
to_string() method. This allows types to implement both the Rust
Display trait (which provides to_string() via
ToString) and still expose the JavaScript toString() functionality.
Re-exports§
pub use wasm_bindgen;
Modules§
- Atomics
- The
Atomicsobject provides atomic operations as static methods. They are used withSharedArrayBufferobjects. - Intl
- JSON
- The
JSONobject contains methods for parsing JavaScript Object Notation (JSON) and converting values to JSON. It can’t be called or constructed, and aside from its two method properties, it has no interesting functionality of its own. - Math
- Reflect
- WebAssembly
Structs§
- Array
- Array
Buffer - Array
Buffer Options - Array
Into Iter - Iterator returned by
Array::into_iter - Array
Iter - Iterator returned by
Array::iter - Array
Tuple - Async
Generator - Async
Iterator - Any object that conforms to the JS async iterator protocol. For example,
something returned by
myObject[Symbol.asyncIterator](). - BigInt
- BigInt64
Array - BigUint64
Array - Boolean
- Data
View - Date
- Error
- Eval
Error - Float32
Array - Float64
Array - Function
Functionrepresents any generic Function in JS, by treating all arguments asJsValue.- Generator
- Int8
Array - Int16
Array - Int32
Array - Into
Iter - An iterator over the JS
Symbol.iteratoriteration protocol. - Iter
- An iterator over the JS
Symbol.iteratoriteration protocol. - Iterator
- Any object that conforms to the JS iterator protocol. For example,
something returned by
myArray[Symbol.iterator](). - Iterator
Next - The result of calling
next()on a JS iterator. - JsOption
- A nullable JS value of type
T. - JsString
- Map
- Null
- The JavaScript
nullvalue. - Number
- Object
- Promise
- The
Promiseobject represents the eventual completion (or failure) of an asynchronous operation, and its resulting value. - Promise
State - The
PromiseStateobject represents the the status of the promise, as used inallSettled. - Property
Descriptor - Proxy
- Range
Error - The
RangeErrorobject indicates an error when a value is not in the set or range of allowed values. - Reference
Error - The
ReferenceErrorobject represents an error when a non-existent variable is referenced. - RegExp
- RegExp
Match Array - The result array from
RegExp.exec()orString.matchAll(). - Set
- Shared
Array Buffer - Symbol
- Syntax
Error - A
SyntaxErroris thrown when the JavaScript engine encounters tokens or token order that does not conform to the syntax of the language when parsing code. - TryFrom
IntError - The error type returned when a checked integral type conversion fails.
- Type
Error - The
TypeErrorobject represents an error when a value is not of the expected type. - Uint8
Array - Uint8
Clamped Array - Uint16
Array - Uint32
Array - Undefined
- The JavaScript
undefinedvalue. - UriError
- The
URIErrorobject represents an error when a global URI handling function was used in a wrong way. - WeakMap
- WeakRef
- WeakSet
Traits§
- Async
Iterable - Trait for types known to implement the iterator protocol on Symbol.asyncIterator
- Function
Into Closure - Iterable
- Trait for JavaScript types that implement the iterable protocol via
Symbol.iterator. - JsArgs
- Trait for argument tuples that can call or bind a
Function<T>. - JsFunction
- JsFunction1
- JsFunction2
- JsFunction3
- JsFunction4
- JsFunction5
- JsFunction6
- JsFunction7
- JsFunction8
- JsGeneric
- A convenience trait for types that erase to
JsValue. - JsTuple
- Base trait for tuple types.
- JsTuple1
- JsTuple2
- JsTuple3
- JsTuple4
- JsTuple5
- JsTuple6
- JsTuple7
- JsTuple8
- Promising
- Marker trait for types which represent
ResolutionorPromise<Resolution>. - Typed
Array
Functions§
- decode_
uri - The
decodeURI()function decodes a Uniform Resource Identifier (URI) previously created byencodeURIor by a similar routine. - decode_
uri_ component - The
decodeURIComponent()function decodes a Uniform Resource Identifier (URI) component previously created byencodeURIComponentor by a similar routine. - encode_
uri - The
encodeURI()function encodes a Uniform Resource Identifier (URI) by replacing each instance of certain characters by one, two, three, or four escape sequences representing the UTF-8 encoding of the character (will only be four escape sequences for characters composed of two “surrogate” characters). - encode_
uri_ component - The
encodeURIComponent()function encodes a Uniform Resource Identifier (URI) component by replacing each instance of certain characters by one, two, three, or four escape sequences representing the UTF-8 encoding of the character (will only be four escape sequences for characters composed of two “surrogate” characters). - escape
- The
escape()function computes a new string in which certain characters have been replaced by a hexadecimal escape sequence. - eval
- The
eval()function evaluates JavaScript code represented as a string. - global
- Returns a handle to the global scope object.
- is_
finite - The global
isFinite()function determines whether the passed value is a finite number. If needed, the parameter is first converted to a number. - parse_
float - The
parseFloat()function parses an argument and returns a floating point number, or NaN on error. - parse_
int - The
parseInt()function parses a string argument and returns an integer of the specified radix (the base in mathematical numeral systems), or NaN on error. - try_
iter - Create an iterator over
valusing the JS iteration protocol andSymbol.iterator. - unescape
- The
unescape()function computes a new string in which hexadecimal escape sequences are replaced with the character that it represents. The escape sequences might be introduced by a function likeescape. Usually,decodeURIordecodeURIComponentare preferred overunescape.
Attribute Macros§
- wasm_
bindgen - A list of all the attributes can be found here: https://wasm-bindgen.github.io/wasm-bindgen/reference/attributes/index.html