我有一个生成的数组,我想在 html 中将其显示为垂直列表,最好是每个单独的元素。
我已经这样做了:
var a = _.intersection(viewedUserLikedUsersArray, loggedInLikedUsersArray);
for (var i=0; i < a.length; i++){
displayListOfMatches.innerHTML = a[i];
}
但显然这种方式会将innerHTML替换为数组中的最后一个元素,而不是将每个元素堆叠在一起
最佳答案
人们可能会说要这样做:
displayListOfMatches.innerHTML = "<p>" + a.join("</p><p>") + "</p>";
...它可以工作但是请注意,数组条目的内容将被解析为 HTML。
如果这不行,您可以通过 map
替换这些字符来构建 HTML 字符串:
displayListOfMatches.innerHTML = a.map(function(entry) {
return "<p>" + entry.replace(/&/g, "&").replace(/</g, "<") + "</p>";
}).join("");
...或者根据需要构建元素,也许使用 forEach
:
displayListOfMatches.innerHTML = ""; // You can leave this out if it's empty
a.forEach(function(entry) {
var p = document.createElement("p");
p.appendChild(document.createTextNode(entry));
displayListOfMatches.appendChild(p);
});
当然,在所有情况下,您都可以调整它以使用不同的元素/标记。
关于javascript - 在垂直列表中显示 JavaScript 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39774198/