javascript - 在垂直列表中显示 JavaScript 数组

标签 javascript html arrays

我有一个生成的数组,我想在 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, "&amp;").replace(/</g, "&lt;") + "</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/

相关文章:

html - Internet Explorer 中标签内的图像和复选框

java - 在java中仅对字符串数组中的数字元素进行排序?

c++ - 这段 C++ 代码如何在 GCC 而不是 Visual C++ 中运行?

javascript - Ajax未捕获类型错误: in simple function

javascript - 我的元素显示在不同窗口大小的不同位置。如何定位?

html - div 中图像旁边的文本,它根据图像的高度改变高度

C# 林奇 : Dynamically create property and values that includes sum of a value from a grouped query

javascript - Sequelize getter 方法的返回值

javascript - 如何通过 Javascript 将数据作为数组发送到 PHP?

HTML文件上传服务器问题