【问题标题】:Displaying only the first item from the localStorage data array仅显示 localStorage 数据数组中的第一项
【发布时间】:2019-09-22 14:05:14
【问题描述】:

我正在尝试构建一个应该显示列表中第一个数字的板,但我找不到 $.each 替代方案。

目前,我有一段代码显示来自localStorage 的所有项目。有谁知道jQuery 函数将数组作为参数并仅回调第一项?与此类似 - $.each( array, callback )

const clients = JSON.parse(localStorage.getItem("data"));
  const odontologas = clients.Odontologas;

  $.each(odontologas, function(i, item) {
    if (item.Būsena === "Eilėje") {
      $("#odontologasQueue").append(
        `<p class="boardNumber">${item.EilėsNr}</p>`
      );
    } else {
      $("#odontologasQueue").append(`<p class="boardNumber">000</p>`);
    }
  });

【问题讨论】:

  • 那么为什么要循环而不是只看第一个索引呢? var item = odontologas[0]....
  • 那么它总是会显示第一个项目。我需要循环找出哪些项目设置为特定字符串,然后显示第一次出现。
  • 所以不要在数组上使用 find() 或退出循环。

标签: javascript jquery arrays ajax


【解决方案1】:

只需将return false 添加到if 语句即可。

【讨论】:

    【解决方案2】:

    所以要么在找到匹配项时退出循环,要么使用 array.find

    var first = odontologas.find(item => item.Būsena === "Eilėje")
    // var first = odontologas.find(function(item) { return item.Būsena === "Eilėje" })
    console.log(first)
    

    【讨论】:

      【解决方案3】:

      长话短说,你想要一个条目的索引吗?这是

      odontologas.indexOf("Eilėje"); // equals -1 if element isn't found in the array
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-02-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-10-28
        • 2019-01-11
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多