【发布时间】:2021-10-21 23:47:42
【问题描述】:
我有一个对象数组。在每个对象中都有一个key 和一个字符串数组的value(每个对象中字符串的数量会发生变化)。如何在JS 模板文字中将数组的每个字符串显示为<span>?
如果数组包含 2 个字符串,则应该出现 2 个<span>,
如果是 3 个字符串,则为 3 个 <span> 等。
代码:
let items = [{
"id": 1,
"name": "item 1",
"captionTags": ["Stills", "Animation", "Virtual Reality"]
},
{
"id": 2,
"name": "item 2",
"captionTags": ["Configurator", "Animation", "Application"]
},
{
"id": 3,
"name": "item 3",
"captionTags": ["Stills", "Configurator"]
}];
function displayItems() {
let itemsContainer = document.querySelector('.items-container');
itemsContainer.innerHTML = '';
items.forEach(item => {
itemsContainer.innerHTML += `
<div class="items-wrapper">
<div class="item-caption">
<span class="item-caption-col">
<h3>${item.name}</h3>
<span class="item-caption-tags">
I WANT TO DISPLAY HERE EACH ELEMENT OF CAPTION TAGS ARRAY IN EACH OBJECT
AS SPANS
</span>
</span>
</div>
</div>`
});
};
displayItems();
提前感谢您的帮助!
【问题讨论】:
-
只需遍历
item.captionTags,将字符串包装在<span>中并附加它们?
标签: javascript html arrays javascript-objects template-literals