map 不是 testcafe 中的函数

map is not a function in testcafe

我无法在客户端函数中使用地图函数。

 export function availableAudioBitrates() {
  const getOptionNames = ClientFunction(() => {
    const select = document.querySelector('[data-testid=audioBitrate-setting]');
    const options = select.querySelectorAll('option');
    console.log(typeof options);
    //const values = [];
    const values = options.map((option) => option.TextContent);

    //options.forEach((option) => values.push(option.textContent));
    return values;
  });
  return getOptionNames();
}

我有“options.foreach”语句在工作,但是使用 map 函数时,它会抛出一个错误,指出 options.map 不是一个函数。

检查 options 的值,它未定义或不是数组。 .map() 需要一个数组到 运行,任何其他都会导致该错误

因为那是一个 HTMLCollection,而不是数组。 使用 Array.form(select.querrySelectorAll('option')).

export function availableAudioBitrates() {
  const getOptionNames = ClientFunction(() => {
    const select = document.querySelector('[data-testid=audioBitrate-setting]');
    const options = Array.from(select.querySelectorAll('option'));
    console.log(typeof options);
    //const values = [];
    const values = options.map((option) => option.TextContent);

    //options.forEach((option) => values.push(option.textContent));
    return values;
  });
  return getOptionNames();
}