猿问

如何在 JavaScript 中使用对象键作为标题和值子列表

我有一个简单的 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>


犯罪嫌疑人X
浏览 96回答 1
1回答

Smart猫小萌

既然没有骗子,那我就来回答一下吧。这里有两件事。代替:=附加:+=你所做的就是替换。您需要做的是附加。您的解决方案是:let list = "";values.forEach(item => {&nbsp; list += `<li class="list">${ item }</li>`;});向您展示正在发生的情况的示例片段如下:var arr = ["One", "Two", "Three"];var one = "";arr.forEach(function (a) {&nbsp; one = a;});console.log(one);var two = "";arr.forEach(function (a) {&nbsp; two += a;});console.log(two);one我希望您能够理解上述变量和 的情况two。你正在寻找,two但你已经实现了one。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答