jQuery 获取所有 <th> 值的数组

use*_*616 2 html javascript jquery node.js

我想获得<th>一个表中所有s的所有内部文本的数组。

以下作品

$("th").toArray().map(th => th.innerText)

只是想知道直接 jQuery 是否有更好的方法(我必须转换为 Array 然后使用 JS 方法)

Cer*_*nce 5

如果您想避免使用 来创建中间数组,则.map有一种不使用 jQuery的更有效方法,它只为输出创建一个数组,但它需要更多源代码:

const texts = Array.from(
  document.querySelectorAll('th'),
  th => tx.innerText
);
Run Code Online (Sandbox Code Playgroud)

从您的原始版本开始,您可以.text通过在 之前映射来使用 jQuery .toArray

const texts = Array.from(
  document.querySelectorAll('th'),
  th => tx.innerText
);
Run Code Online (Sandbox Code Playgroud)
const texts = $("th").map(function() { return $(this).text(); }).toArray();
console.log(texts);
Run Code Online (Sandbox Code Playgroud)

但您可能想使用.textContent代替.innerText代替。

  • 我不知道“Array.from()”的第二个参数。这很有用。 (2认同)