メインコンテンツに移動
バージョン: 22.5.0

JSHandle クラス

JavaScript オブジェクトへの参照を表します。インスタンスは Page.evaluateHandle() を使用して作成できます。

ハンドルは、ハンドルが意図的に 破棄 されない限り、参照される JavaScript オブジェクトがガbage-collected されるのを防ぎます。 JSHandle は、関連付けられたフレームが移動されたり、親コンテキストが破棄されたりすると、自動的に破棄されます。

ハンドルは、Page.$eval()Page.evaluate()Page.evaluateHandle() などの評価関数の引数として使用できます。それらは、参照されるオブジェクトに解決されます。

シグネチャ:

export declare abstract class JSHandle<T = unknown>

備考

このクラスのコンストラクタは内部用としてマークされています。サードパーティのコードは、コンストラクタを直接呼び出したり、`JSHandle` クラスを拡張するサブクラスを作成したりしないでください。

const windowHandle = await page.evaluateHandle(() => window);

プロパティ

プロパティ修飾子説明
_optionalTJSHandle を名目上型付けするために使用されます。
move() => this

メソッド

メソッド修飾子説明
asElement()ハンドルが ElementHandle のインスタンスである場合、`null` またはハンドル自体。
dispose()ガベージコレクションのために、ハンドルによって参照されるオブジェクトを解放します。
evaluate(pageFunction, args)現在のハンドルを最初の引数として、指定された関数を評価します。
evaluateHandle(pageFunction, args)現在のハンドルを最初の引数として、指定された関数を評価します。
getProperties()現在のハンドルのプロパティを表すハンドルのマップを取得します。
getProperty(propertyName)参照されるオブジェクトから単一のプロパティを取得します。
getProperty(propertyName)
jsonValue()参照されるオブジェクトのシリアライズ可能な部分を表現した Vanilla オブジェクト。
remoteObject()このハンドルを支える Protocol.Runtime.RemoteObject へのアクセスを提供します。
toString()JSHandle の文字列表現を返します。