zoukankan      html  css  js  c++  java
  • js之对象处理

    数据拼接一:

    原始数据为对象

    {
        0grade: ""
      0home: "萍钢四切(边部钩痕)"
      0price: "3200"
      0productName: "普板"
      0remark: ""
      1grade: ""
      1home: "萍钢四切(边部钩痕)"
      1price: "3201"
      1productName: "普板"
      1remark: ""
        3grade: ""
      3home: "萍钢四切(边部钩痕)"
      3price: "3201"
      3productName: "普板"
      3remark: ""
    }
    View Code

     要求数据为数组

    [
        {
            grade: "",
            home:"萍钢四切(边部钩痕)",
            price: "3021",
            productName: "普板",
            remark: "",
        },{
            grade: "",
            home:"萍钢四切(边部钩痕)",
            price: "3021",
            productName: "普板",
            remark: "",
        },
        {
            grade: "",
            home:"萍钢四切(边部钩痕)",
            price: "3021",
            productName: "普板",
            remark: "",
        } 
    ]
    View Code

    解决方案一:

    getTableArry (data) {
      let arry = [];
      let obj = {};
        for(let key in data) {
        let curKey = parseInt(key.replace(/[^0-9]+/g, '')); // 获取key里的数字标记
        let keyName =key.replace(/[^a-zA-Z]+/g, ''); // 获取 key里的字段名称
        if(!isNaN(curKey)){// 过滤掉不包含数字标记的
            obj = {
             'productName':data[`${curKey}productName`],
             'spec':data[`${curKey}spec`],
             'grade':data[`${curKey}grade`],
             'home':data[`${curKey}home`],
             'weight':data[`${curKey}weight`],
             'warehouse':data[`${curKey}warehouse`],
             'price':data[`${curKey}price`],
             'remark':data[`${curKey}remark`],
             }
            if(`${curKey}` in arry) {// 过滤掉已经追加到arry的obj
    
            }else {
              arry.push(obj)
            }
          }
          
      }
       return arry;
    }
    View Code

     解决方案二:

    ps: obj 对象拷贝,需放在里面,每次重新初始化

      getTableArry (data, o) {
        let arry = [];
    
          for(let key in data) {
          let curKey = parseInt(key.replace(/[^0-9]+/g, '')); // 获取key里的数字标记
          let keyName =key.replace(/[^a-zA-Z]+/g, ''); // 获取 key里的字段名称
          if(!isNaN(curKey)){// 过滤掉不包含数字标记的
              if(`${curKey}` in arry) {// 过滤掉已经追加到arry的obj
      
              }else {
                  let obj = {};
                    for (let i in o){
                      obj[i] = data[`${curKey}${i}`]
                    } 
                arry.push(obj)  
              }
            }
            
        }
          return arry;
      }
    View Code
  • 相关阅读:
    [转]ASP.NET Core 中间件详解及项目实战
    [转]如何在ASP.NET Core中实现一个基础的身份认证
    [转]ASP.NET Core 之 Identity 入门(三)
    [转]ASP.NET Core 之 Identity 入门(二)
    [转]ASP.NET Core 之 Identity 入门(一)
    [转]用Middleware给ASP.NET Core Web API添加自己的授权验证
    [转]NET Core中实现一个Token base的身份认证
    [转]MVC过滤器
    [转]【无私分享:ASP.NET CORE 项目实战(第九章)】创建区域Areas,添加TagHelper
    [转]国家发展改革委关于印发促进中部地区崛起“十三五”规划的通知
  • 原文地址:https://www.cnblogs.com/yangstar90/p/7121800.html
Copyright © 2011-2022 走看看