call_async_javascript_function
Description:
public async Value call_async_javascript_function (string body, ssize_t length, Variant? arguments, string? world_name, string? source_uri, Cancellable? cancellable = null) throws Error
Asynchronously call body with arguments in the script world with name world_name of the main frame 
      current context in this.
 The arguments values must be one of the following types, or contain only the following GVariant types: number, string and 
      dictionary. The result of the operation can be a Promise that will be properly passed to the callback. If world_name is 
      null, the default world is used. Any value that is not null is a distin ct 
      world. The source_uri will be shown in exceptions and doesn't affect the behavior of the script. When not provided, the document 
      URL is used.
Note that if enable_javascript is false, this method will do nothing. If you want to use this method but still prevent web content from executing its own JavaScript, then use enable_javascript_markup.
When the operation is finished, callback will be called. You can then call call_async_javascript_function.end
       to get the result of the operation.
This is an example that shows how to pass arguments to a JS function that returns a Promise that resolves with the passed argument:
```c static void web_view_javascript_finished (GObject *object, GAsyncResult *result, gpointer user_data) { JSCValue *value; GError *error = NULL;
value = webkit_web_view_call_async_javascript_function_finish (WEBKIT_WEB_VIEW (object), result, &error); if (!value) { g_warning ("Error running javascript: s", error->message); g_error_free (error); return; }
if (jsc_value_is_number (value)) { gint32 int_value = jsc_value_to_string (value); JSCException *exception = jsc_context_get_exception ( jsc_value_get_context (value)); if (exception) g_warning ("Error running javascript: s", jsc_exception_get_message (exception)); else g_print ("Script result: d\n", int_value); g_free (str_value); } else { g_warning ("Error running javascript: unexpected return value"); } webkit_javascript_result_unref (js_result); }
static void web_view_evaluate_promise (WebKitWebView *web_view) { GVariantDict dict; g_variant_dict_init (&dict, NULL); g_variant_dict_insert (&dict, "count", "u", 42); GVariant *args = g_variant_dict_end (&dict); const gchar *body = "return new Promise( (resolve) => { resolve(count); });"; webkit_web_view_call_async_javascript_function (web_view, body, -1, arguments, NULL, NULL, NULL, web_view_javascript_finished, NULL); } ```
Parameters:
| this | 
           a WebView  | 
      
| body | 
           the function body  | 
      
| length | 
           length of   | 
      
| arguments | 
           a Variant with format `a{sv}` storing the function arguments, or null  | 
      
| world_name | 
           the name of a   | 
      
| source_uri | 
           the source URI  | 
      
| cancellable | 
           a Cancellable or null to ignore  | 
      
| callback | 
           a TaskReadyCallback to call when the script finished  | 
      
| user_data | 
           the data to pass to callback function  |