page._client 在 Puppeteer 中做什么?

Mov*_*ost 5 node.js puppeteer chrome-devtools-protocol

我阅读了整个 Puppeteer 文档,但不幸的是,他们没有任何_client有关page.

所以我的问题是,什么是page._client

使用之间有什么区别

await page._client.send('');
Run Code Online (Sandbox Code Playgroud)

client = await page.target().createCDPSession()
await client.send('');
Run Code Online (Sandbox Code Playgroud)

Chr*_*itz 5

按照 JS 约定,带有下划线前缀的字段和方法_client是“私有的”,不值得依赖。几乎可以肯定,这也是它没有记录在案的原因。您使用它的风险由您自己承担。在新版本的 puppeteer 中,这个字段可能会消失或者做一些完全不同的事情。

较新版本的 JavaScript 具有正确的私有字段和方法(#在类定义中以 为前缀),因此很可能 puppeteer 很快就会将这些字段转换为正确的私有字段。