3aee641c3d
🤖 I have created a release *beep* *boop* --- ## [18.1.0](https://github.com/puppeteer/puppeteer/compare/v18.0.5...v18.1.0) (2022-10-05) ### Features * **chromium:** roll to Chromium 107.0.5296.0 (r1045629) ([#9039](https://github.com/puppeteer/puppeteer/issues/9039)) ([022fbde
](022fbde85e
)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
35 lines
1.3 KiB
Markdown
35 lines
1.3 KiB
Markdown
---
|
|
sidebar_label: WebWorker.evaluate
|
|
---
|
|
|
|
# WebWorker.evaluate() method
|
|
|
|
If the function passed to the `worker.evaluate` returns a Promise, then `worker.evaluate` would wait for the promise to resolve and return its value. If the function passed to the `worker.evaluate` returns a non-serializable value, then `worker.evaluate` resolves to `undefined`. DevTools Protocol also supports transferring some additional values that are not serializable by `JSON`: `-0`, `NaN`, `Infinity`, `-Infinity`, and bigint literals. Shortcut for `await worker.executionContext()).evaluate(pageFunction, ...args)`.
|
|
|
|
**Signature:**
|
|
|
|
```typescript
|
|
class WebWorker {
|
|
evaluate<
|
|
Params extends unknown[],
|
|
Func extends EvaluateFunc<Params> = EvaluateFunc<Params>
|
|
>(
|
|
pageFunction: Func | string,
|
|
...args: Params
|
|
): Promise<Awaited<ReturnType<Func>>>;
|
|
}
|
|
```
|
|
|
|
## Parameters
|
|
|
|
| Parameter | Type | Description |
|
|
| ------------ | -------------- | ----------------------------------------------- |
|
|
| pageFunction | Func \| string | Function to be evaluated in the worker context. |
|
|
| args | Params | Arguments to pass to <code>pageFunction</code>. |
|
|
|
|
**Returns:**
|
|
|
|
Promise<Awaited<ReturnType<Func>>>
|
|
|
|
Promise which resolves to the return value of `pageFunction`.
|