javascript - 将循环迭代附加到 html

标签 javascript jquery json

我有一个 for in 循环,它遍历一些 JSON 并为每次迭代输出三个不同的值。根据我的阅读,最好不要在 for 循环内进行追加,而是最好将值保存到数组并在循环外追加。

我的问题是,如果我有三个包含我的值的数组,例如书名、作者和 URL——我将如何附加这些值以使它们如下所示?而不是在所有值的三个单独列表中。

Book Title
Author
URL

Book Title 
Author 
URL

最佳答案

您始终可以创建 documentFragment :

var data = ['1', '2', '3', '4'];
// Create empty fragment
var fragment = document.createDocumentFragment();
// My iteration that will append items to the fragment
for ( var i = 0; i < data.length; i++ ) {
   var item = document.createElement('span');
   item.appendChild(document.createTextNode(data[i]));
   fragment.appendChild(item);
}
// After my iteration i will append my fragment 
//   to the place in the page I want my newly created items to appear. 
document.body.appendChild(fragment);

关于javascript - 将循环迭代附加到 html,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29670043/

相关文章:

javascript - 选择时的 Angular HTML 列表将所选值放入应用程序范围的变量和跨度中

javascript - Angular 6 当我尝试在 2 个单独的 Canvas 元素上渲染相同的图像时

javascript - 如何使 contenteditable div 只允许某些标签?

jquery - 未捕获语法错误,无法识别的表达式 : [object HTMLDivElement] - jQuery 1. 6.2

java - 使用 fastxml.jackson 将 JSON 解析为 Java 记录

javascript - 警报用户字段必须为空

javascript - 我怎样才能访问 "this"内的项目

javascript - 如何保持 jQuery Accordion 禁用但仍更改其事件状态?

java - Json字符串部分反序列化为使用jackson嵌入另一个Json字符串的Java对象

java - 将对象转换为 Java 中的自定义 DTO 列表