zoukankan      html  css  js  c++  java
  • js数据处理

    2019年即将过去,回想一下这一年所经历的事情遇到的人和失去的一些东西,该以一个什么样的心态去迎接新的一年的到来...

    树形数据转换

    在处理商品分类数据、企业列表数据等情况下,后台会返回到前台所有的数据。我们需要根据parentId,数据ID将数据转换为树形数据进行渲染。

    export function treeDataTranslate(data, id = 'id', pid = 'parentId') {
      var res = []
      var temp = {}
      for (var i = 0; i < data.length; i++) {
        temp[data[i][id]] = data[i]
      }
      for (var k = 0; k < data.length; k++) {
        if (temp[data[k][pid]] && data[k][id] !== data[k][pid]) {
          if (!temp[data[k][pid]]['children']) {
            temp[data[k][pid]]['children'] = []
          }
          if (!temp[data[k][pid]]['_level']) {
            temp[data[k][pid]]['_level'] = 1
          }
          data[k]['_level'] = temp[data[k][pid]]._level + 1
          temp[data[k][pid]]['children'].push(data[k])
        } else {
          res.push(data[k])
        }
      }
      return res
    }

    定义对象并赋值

    var ratio = {};
    ratio.low = 70;
    console.log(ratio ) //{low: 70}

    找出两个数组中的交集

    for循环
    var arr1 = [1, 2, 3]
    var arr2 = [3, 4, 5, 6]
    
    var commonArr = []
    for (var i = 0; i < arr1.length; i++) {
      var _item = arr1[i]
      for (var j = 0; j < arr2.length; j++) {
        if (_item === arr2[j]) {
          commonArr.push(_item)
        }
      }
    }
    
    ES6 的 filter 结合 includes 方法
    var arr1 = [1, 2, 3]
    var arr2 = [3, 4, 5, 6]
    
    arr1.filter(item=>arr2.includes(item))

    对象中的某个属性值拼接为字符串

    //this.data对象数据   attr是属性
    let attrs = this.data.map(item=>item.attr).toString();
  • 相关阅读:
    热烈祝贺自己的博客进入前1000名
    烈日之后逛成都
    懂得爱情
    腾飞天涯
    哈佛教授教你成为No.1的秘诀
    烈日炎炎
    有缘无份——因为伤感所以美丽
    时间管理
    亲爱的陌生人(转)
    走好激励第一步
  • 原文地址:https://www.cnblogs.com/home-/p/11947164.html
Copyright © 2011-2022 走看看