Согласно документам Puppeteer , page.evaluate()
возвращает несериализуемое значение. Они ссылаются на MDN документы , где объясняется, что JSON.stringify()
преобразует или нет.
Я пытаюсь получить значения Date
(в виде строк ISO), но пустой объект вернулся. В документах MDN говорится о Date
объектах следующее:
Экземпляры Date
реализуют функцию toJSON()
, возвращая строку (то же самое, что date.toISOString()
). Таким образом, они обрабатываются как строки.
Вот пример для его воспроизведения:
const puppeteer = require('puppeteer'); // v5.0.0
(async () => {
const browser = await puppeteer.launch({devtools: true});
const page = await browser.newPage();
await page.goto('about:blank');
let date = await page.evaluate(() => {
return new Date();
});
// Expected an ISO date string but empty object returned
console.log(date); // Output: {}
await browser.close();
})();
Я что-то упустил?