加入 Playwright/Node/JS 中的评估值数组

Join arrays of evaluated values in Playwright/Node/JS

我正在尝试使用 Node.js 中的 Playwright 抓取具有多个搜索结果的页面。 刮掉不同的单个元素很容易。但是如何将它们连接到一个数组中,以便将各个元素连接到一个节点中?

这是我的:

var myArray = [];
const titles = await page.$$eval('//h3', elements => elements.map(el => el.textContent.trim().split('\n')[0]))
const prices = await page.$$eval('.price', elements => elements.map(el => el.textContent.trim().split('\n')[0]))
myArray.push(String(titles) + String(prices));


console.log(titles); gets me this :    ['ProductTitleOne', 'ProductTitleTwo']   
console.log(prices); gets me this :    ['456','123']

console.log(myArray);  results in this ['ProductTitleOne', 'ProductTitleTwo','456','123']

我想要这样的东西:[{'ProductTitleOne','456'}, {'ProductTitleTwo','123'}]
(或者这个:{{'ProductTitleOne','456'}, {'ProductTitleTwo','123'}})

以下尝试也失败了:

const combined1 = [].concat(titles, prices);
let get_all = [...titles, ...prices];

研究过映射、数组、索引,也看过很多 Whosebug 问题,但仍然不知道如何解决这个问题。如果有人对如何解决这个问题有一些指示,非常感谢。

你可以这样做

const result = titles.map((title, index)=> ({ title, price: prices[index]}));