从特定的类文本创建数组

时间:2018-06-14 05:22:49

标签: javascript jquery arrays

我需要从所有planet文本创建一个数组:

<div class='planet'>earth</div>
<div class='planet'>sun</div>
<div class='planet'>moon</div>

var planets = JSON.stringify(Array.from($('.planet').text()));

console.log(planets);

在我需要的控制台中:

["earth","sun","moon"]

任何帮助?

4 个答案:

答案 0 :(得分:1)

您只需使用document.querySelectorAll选择所有这些元素,使用Array.from获取数组,然后使用Array.prototype.map从中生成数组。

&#13;
&#13;
console.log(Array.from(document.querySelectorAll(".planet")).map(t => t.innerText));
&#13;
<div class='planet'>earth</div>
<div class='planet'>sun</div>
<div class='planet'>moon</div>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

使用 jQuery.each

&#13;
&#13;
var planets = [];

$('.planet').each((i, e) => planets.push($(e).text()));

console.log(planets);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class='planet'>earth</div>
<div class='planet'>sun</div>
<div class='planet'>moon</div>
&#13;
&#13;
&#13;

答案 2 :(得分:0)

var arr = [];

document.querySelectorAll('.planet').forEach(elem => {
  arr.push(elem.textContent);
});

console.log(arr);
<div class='planet'>earth</div>
<div class='planet'>sun</div>
<div class='planet'>moon</div>

答案 3 :(得分:0)

使用jquery中的每个函数遍历所有元素,然后推入数组。

planets=[]
$('.planet').each(function(){
planets.push($(this).text())
});

console.log(planets);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class='planet'>earth</div>
<div class='planet'>sun</div>
<div class='planet'>moon</div>