pub struct Array<T: JsCast>(/* private fields */);
Implementations§
Source§impl<T: JsCast> Array<T>
impl<T: JsCast> Array<T>
pub fn shift(&self) -> JsNullable<T>
pub fn reverse(&self) -> Array<T>
pub fn pop(&self) -> JsNullable<T>
pub fn to_locale_string(&self) -> JsString
pub fn to_string(&self) -> JsString
pub fn reduce_right(&self, callbackfn: &dyn ToJs<JsValue>) -> T
pub fn reduce(&self, callbackfn: &dyn ToJs<JsValue>) -> T
pub fn unshift(&self, items: &dyn ToJs<Array<T>>) -> JsNumber
pub fn sort(&self, compareFn: &dyn ToJs<JsNullable<JsValue>>) -> Self
pub fn join(&self, separator: &dyn ToJs<JsNullable<JsString>>) -> JsString
pub fn concat(&self, items: &dyn ToJs<Array<JsValue>>) -> Array<T>
pub fn push(&self, items: &dyn ToJs<Array<T>>) -> JsNumber
pub fn is_array(browser: &Browser, arg: &dyn ToJs<JsValue>) -> JsBoolean
pub fn call_self( browser: &Browser, arrayLength: &dyn ToJs<JsNullable<JsNumber>>, ) -> Array<JsValue>
pub fn new(browser: &Browser, items: &dyn ToJs<Array<T>>) -> Array<T>
pub fn reduce_right_with_callbackfn_initialValue<U: JsCast>( &self, callbackfn: &dyn ToJs<JsValue>, initialValue: &dyn ToJs<U>, ) -> U
pub fn reduce_with_callbackfn_initialValue<U: JsCast>( &self, callbackfn: &dyn ToJs<JsValue>, initialValue: &dyn ToJs<U>, ) -> U
pub fn filter( &self, predicate: &dyn ToJs<JsValue>, thisArg: &dyn ToJs<JsNullable<JsValue>>, ) -> Array<T>
pub fn map<U: JsCast>( &self, callbackfn: &dyn ToJs<JsValue>, thisArg: &dyn ToJs<JsNullable<JsValue>>, ) -> Array<U>
pub fn for_each( &self, callbackfn: &dyn ToJs<JsValue>, thisArg: &dyn ToJs<JsNullable<JsValue>>, ) -> JsNullish
pub fn some( &self, predicate: &dyn ToJs<JsValue>, thisArg: &dyn ToJs<JsNullable<JsValue>>, ) -> JsBoolean
pub fn every( &self, predicate: &dyn ToJs<JsValue>, thisArg: &dyn ToJs<JsNullable<JsValue>>, ) -> JsBoolean
pub fn last_index_of( &self, searchElement: &dyn ToJs<T>, fromIndex: &dyn ToJs<JsNullable<JsNumber>>, ) -> JsNumber
pub fn index_of( &self, searchElement: &dyn ToJs<T>, fromIndex: &dyn ToJs<JsNullable<JsNumber>>, ) -> JsNumber
pub fn splice( &self, start: &dyn ToJs<JsNumber>, deleteCount: &dyn ToJs<JsNullable<JsNumber>>, ) -> Array<T>
pub fn slice( &self, start: &dyn ToJs<JsNullable<JsNumber>>, end: &dyn ToJs<JsNullable<JsNumber>>, ) -> Array<T>
pub fn splice_with_start_deleteCount_items( &self, start: &dyn ToJs<JsNumber>, deleteCount: &dyn ToJs<JsNumber>, items: &dyn ToJs<Array<T>>, ) -> Array<T>
pub fn get_length(&self) -> JsNumber
pub fn set_length(&self, value: &dyn ToJs<JsNumber>)
pub fn get_prototype(browser: &Browser) -> Array<JsValue>
pub fn set_prototype(browser: &Browser, value: &dyn ToJs<Array<JsValue>>)
Methods from Deref<Target = JsObject>§
Sourcepub fn js_get_field(&self, property: &dyn UseInJsCode) -> JsValue
pub fn js_get_field(&self, property: &dyn UseInJsCode) -> JsValue
Get a field value of in this object.
WSDOM provides built-in getters so you should use that instead when possible.
Use js_get_field
only when needed
fn example(browser: Browser) {
// you can get `window["location"]["href"]` like this
let href: JsValue = wsdom::dom::location(&browser).js_get_field(&"href");
// but you should use built-in getters instead
let href: JsString = wsdom::dom::location(&browser).get_href();
}
Sourcepub fn js_set_field(&self, property: &dyn UseInJsCode, value: &dyn UseInJsCode)
pub fn js_set_field(&self, property: &dyn UseInJsCode, value: &dyn UseInJsCode)
Set a field value of in this object.
WSDOM provides built-in setters so you should use that instead when possible.
Use js_set_field
only when needed
fn example(browser: Browser) {
// you can set `window["location"]["href"]` like this
wsdom::dom::location(&browser).js_set_field(&"href", &"https://example.com/");
// but you should use built-in setters instead
wsdom::dom::location(&browser).set_href(&"https://example.com");
}
Sourcepub fn js_call_method<'a>(
&'a self,
method_name: &'a str,
args: impl IntoIterator<Item = &'a dyn UseInJsCode>,
last_arg_variadic: bool,
) -> JsValue
pub fn js_call_method<'a>( &'a self, method_name: &'a str, args: impl IntoIterator<Item = &'a dyn UseInJsCode>, last_arg_variadic: bool, ) -> JsValue
Call a method on this object.
Most types in WSDOM already come with safe Rust wrappers for their methods, so you should use those instead.
fn example(browser: &Browser) {
let console = wsdom::dom::console(browser);
// you can call console.log like this
console.js_call_method("log", [&"hello" as &_], false);
// but the better way is to use
wsdom::dom::console(&browser).log(&[&"Hello" as &_]);
}
Be aware that the first argument (method_name
) is NOT escaped.
Set last_arg_variadic
to true
if you want to “spread” the last argument as obj.method(arg1, arg2, ...arg3)
.
Sourcepub fn js_call_self<'a>(
&'a self,
args: impl IntoIterator<Item = &'a dyn UseInJsCode>,
last_arg_variadic: bool,
) -> JsValue
pub fn js_call_self<'a>( &'a self, args: impl IntoIterator<Item = &'a dyn UseInJsCode>, last_arg_variadic: bool, ) -> JsValue
Call this object: obj()
.
Most types in WSDOM already come with safe Rust wrappers for their methods, so you should use those instead.
Methods from Deref<Target = JsValue>§
pub fn browser(&self) -> &Browser
Sourcepub fn retrieve_json(&self) -> RetrieveFuture<'_, Value>
pub fn retrieve_json(&self) -> RetrieveFuture<'_, Value>
Retrive this value from the JS side to the Rust side. Returns Future whose output is a serde_json::Value.
§use wsdom::dom::Browser
§use wsdom::dom::HTMLInputElement;
async fn example(input: &HTMLInputElement) { let _val = input.get_value().retrieve_json().await; }