我有一个简单的 json 文件,其中包含数学运算信息。我想将 json 数据放入 ul 内部,这样,对象键应该是带有标头类的标头,并且它的值应该在每个标头之后列出。我的脚本文件:{ "Operations":{ " Arithmetic Operations" : ["+", "-", "*", "/"], "Comparision Operations" : ["Equals","Greater than","Greater than equal to","Less than","Less than equal to"] }}fetch('./js/data.json') .then(function (response) { return response.json(); }) .then(function (data) { fetchList(data['Operations']) });fetchList = data => { Object.entries(data).forEach(([key, values]) => { let list; values.forEach(item => { list = `<li class="list">${ item }</li>`; }); const li = `<li class="head">${ key }</li> ${ list } `; console.log(li) document.querySelector('#operations .lists').innerHTML += li });}结果仅显示每个值的最后一个值<li class="head"> Arithmetic Operations</li><li class="list">/</li><li class="head">Comparision Operations</li><li class="list">Less than equal to</li>
1 回答
Smart猫小萌
TA贡献1911条经验 获得超7个赞
既然没有骗子,那我就来回答一下吧。这里有两件事。
代替:
=
附加:
+=
你所做的就是替换。您需要做的是附加。您的解决方案是:
let list = "";
values.forEach(item => {
list += `<li class="list">${ item }</li>`;
});
向您展示正在发生的情况的示例片段如下:
var arr = ["One", "Two", "Three"];
var one = "";
arr.forEach(function (a) {
one = a;
});
console.log(one);
var two = "";
arr.forEach(function (a) {
two += a;
});
console.log(two);
one
我希望您能够理解上述变量和 的情况two
。你正在寻找,two
但你已经实现了one
。
添加回答
举报
0/150
提交
取消