在for循环|jquery中检查数组中是否多次存在值



当我从后端加载订单列表时,我试图用html显示订单列表。在for循环中,jquery应该查看所订购的食物是否存在多次。

目前列表如下:

  • 披萨
  • 披萨
  • 意大利面

我希望它以这种方式显示:

  • 2个披萨
  • 意大利面

我已经试过这种了

const allEqual = arr => arr.every(v => v === arr[0]);
allEqual([1,1,1,1]);

这里有一种方法:

  • 创建一个名为itemCount的对象
  • 循环浏览原始项目列表
  • 对于列表中的每个项,向以该项命名的itemCount对象添加一个属性,并将其值设置为1。检查该属性是否已存在,如果存在,请将值加1
  • 在完成对列表的迭代后,使用object.keys或object.entries等方法开始对itemCount对象进行迭代
  • 对于对象中的每个属性,将属性名称与属性值连接起来,并附加";x〃;值末尾的字符:

{披萨:3,汤:1,…}=>quot;3x Pizza";,等

有很多方法可以解决这个问题,但我只是分享一个简单的方法来尝试。

最新更新