如何将表格的行分组按“数量”单元格?

如何解决如何将表格的行分组按“数量”单元格?

我认为这是一个普遍的问题,但是我不知道有任何明显的解决方案。

我有一张要订购的物品表(即销售清单)。该表中的列之一是“数量”。是否有一个工具(库或其他工具)可以自动对记录(行)本身进行分组,并增加单元格的“数量”?

简而言之,我希望表格将其转换(行ID,名称,价格):

3,Red ball,3 pieces,$ 5
3,$ 5

输入此名称数量数量,价格):

Red ball,$ 5

问题的详细信息如下... 我为什么需要这个? 我将表的每个位置(行)存储在服务器上。但是由于“数量”列,我必须在新模型中创建新记录,在该模型中,我为每个项目创建重复记录。 例如,字符串(名称数量,价格):

Red ball,$ 5

与(行ID,名称,价格)复制到另一个模型:

3,$ 5

这样做是为了能够使用这些记录(例如,计算它们的数量链接到其他记录等)。但是所有内容都会破坏“ Quantity”列,如果不存在,那么我就不必在应用程序的不同模型中重复任何内容,我只需要显示相同的记录,并且已经“有些ADDON / LIB / PLUGIN / SNIPPET其中“我问你”将显示一个表格,并将相同的行自动分组为一个行,并在客户端(JS)的“数量”列中对其进行计数。原谅我描述我的问题,我认为问题的第一部分就足够了...

我目前正在使用TABULATOR(JS)表,这是一个非常酷的工具,但是我没有在其中找到这样的内置函数...

服务器中的数据格式:

 var tabledata = [
    
    {
        order_item_id:6,name:'red ball',price:5,},{
        order_item_id:7,{
        order_item_id:8,]

解决方法

const tabledata = [{
  order_item_id: 5,name: 'blue ball',price: 3,},{
  order_item_id: 6,name: 'red ball',price: 5,{
  order_item_id: 7,{
  order_item_id: 8,{
  order_item_id: 9,{
  order_item_id: 10,{
  order_item_id: 11,{
  order_item_id: 12,name: 'yellow ball',price: 15,}]

const grouped = tabledata.reduce((acc,item) => {
  /*
   * check whether the accumulator already contains a product with the same name
   * (if it does,return its index otherwise return -1)
   */
  const index = acc.findIndex(_item => _item.name === item.name);

  if (index > -1) {
    /*
     * if the product is already present,increase its quantity by 1
     */
    acc[index].quantity = acc[index].quantity + 1;
  } else {
    /*
     * if the product is not present,add it to the accumulator array
     */
    acc.push({
      name: item.name,unit_price: item.price,quantity: 1
    });
  }

  return acc;
},[]);

console.log('### TABLEDATA:\n',tabledata);
console.log('### GROUPED:\n',grouped);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?