我怎样才能做到这一点相同的功能,以ES6?我想这个文本添加到列表项
var names = [ "Jon", "Nick", "Bill", "Tom" ];
$('#names-list li').each(function (index) {
$(this).text(names[index]);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul id="names-list">
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
ES6似乎无关,你在问什么。
你的问题的主旨似乎是“我怎么做到这一点没有jQuery的?”。在这种情况下,相当于是使用querySelectorAll()
得到li
元素,forEach()
遍历它们,然后设置textContent
,就像这样:
var names = ["Jon", "Nick", "Bill", "Tom"];
document.querySelectorAll('#names-list li').forEach(function(li, index) {
li.textContent = names[index];
});
<ul id="names-list">
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
如果您正在寻找100%ES6,在这里你去:
const names = ["Jon", "Nick", "Bill", "Tom"];
const namesList = document.querySelectorAll("#names-list li");
for (let i in namesList) {
namesList[i].innerText = names[i];
};
但我不会真的写这样的代码如果给我任何编码风格。