zoukankan      html  css  js  c++  java
  • 将一个数组转化为需要的格式,来自react官网的商品列表示例

    //原来的格式
    const PRODUCTS = [
        { category: 'Sporting Goods', price: '$49.99', stocked: true, name: 'Football' },
        { category: 'Sporting Goods', price: '$9.99', stocked: true, name: 'Baseball' },
        { category: 'Sporting Goods', price: '$29.99', stocked: false, name: 'Basketball' },
        { category: 'Electronics', price: '$99.99', stocked: true, name: 'iPod Touch' },
        { category: 'Electronics', price: '$399.99', stocked: false, name: 'iPhone 5' },
        { category: 'Electronics', price: '$199.99', stocked: true, name: 'Nexus 7' }
    ];
    //需要的格式  (就是把公共的标题提取出来了)
    const res=[{ category: 'Sporting Goods' },
    {
        product:
        {
            category: 'Sporting Goods',
            price: '$49.99',
            stocked: true,
            name: 'Football'
        }
    },
    {
        product:
        {
            category: 'Sporting Goods',
            price: '$9.99',
            stocked: true,
            name: 'Baseball'
        }
    },
    {
        product:
        {
            category: 'Sporting Goods',
            price: '$29.99',
            stocked: false,
            name: 'Basketball'
        }
    },
    { category: 'Electronics' },
    {
        product:
        {
            category: 'Electronics',
            price: '$99.99',
            stocked: true,
            name: 'iPod Touch'
        }
    },
    {
        product:
        {
            category: 'Electronics',
            price: '$399.99',
            stocked: false,
            name: 'iPhone 5'
        }
    },
    {
        product:
        {
            category: 'Electronics',
            price: '$199.99',
            stocked: true,
            name: 'Nexus 7'
        }
    }]
    
    let rows = [];
    //记录最后一个分类的值,初始值为null
    let lastCategory = null;
    PRODUCTS.forEach(item => {
        if (item.category !== lastCategory) {
            rows.push({ category: item.category })
        }
        rows.push({ product: item })
        lastCategory = item.category;
    })
    console.log(rows)
    

      

  • 相关阅读:
    [java]Java中父类强制转换成子类的原则
    基于 JWT + Refresh Token 的用户认证实践
    [java]idea设置及debug使用
    [java]Class类和Object类的关系
    [java]文件操作
    [java]javabean
    [java]string类型
    [java]求数据的hmac sha1的并用base64编码
    java 多线程——一个定时调度的例子
    设计模式 4 —— 迭代器和组合模式(组合)
  • 原文地址:https://www.cnblogs.com/samsara-yx/p/12054799.html
Copyright © 2011-2022 走看看