--- sidebar_label: Frame.evaluateHandle --- # Frame.evaluateHandle() method **Signature:** ```typescript class Frame {evaluateHandle = EvaluateFunc>(pageFunction: Func | string, ...args: Params): Promise>>>;} ``` ## Parameters | Parameter | Type | Description | | --- | --- | --- | | pageFunction | Func \| string | a function that is run within the frame | | args | Params | arguments to be passed to the pageFunction | **Returns:** Promise<[HandleFor](./puppeteer.handlefor.md)<Awaited<ReturnType<Func>>>> ## Remarks The only difference between [Frame.evaluate()](./puppeteer.frame.evaluate.md) and `frame.evaluateHandle` is that `evaluateHandle` will return the value wrapped in an in-page object. This method behaves identically to [Page.evaluateHandle()](./puppeteer.page.evaluatehandle.md) except it's run within the context of the `frame`, rather than the entire page.