2018.07.20 WorkSummary——04

今天任务:

优化后台代码,简化前端js部分

收获:

1、

数据库部分表关联与左右连接的分别占用内存的问题,一下面的为例子

  1. SELECT * FROM 表a left joint 表b ON 表a.bid = 表b.id LEFT JOIN 表c ON 表a.cid=表c.id
  2. SELECT * FROM (SELECT * FROM 表a left joint 表b ON 表a.bid = 表b.id) as 表t LEFT JOIN 表c ON 表t.cid=表c.id

第一句会占用一个大笛卡尔积内存,第二句会占用两个笛卡尔积内存,根据需求会选用第一句。

2、

前端js在使用多种类似的函数的时候,可以把多个函数中相同的逻辑抽取出来,单独变成一个函数,将不同的地方抽取出来放到一个容器中,类似Map,数组,list等等。需要哪种函数就从容器取出值来执行函数

比如说现在要在页面上格式化多个字段,如下面例子

statusFormat : function(status){
        if(status=="1"){
           return "上架";
        }
       if(status=="2"){
           return "下架";
        }
    }

typeFormat : function(type){
        if(type=="1"){
           return "a类型";
        }
       if(type=="2"){
           return "b类型";
        }
    }

可以简化成:

var formatArray =[["","上架","下架"],["","a类型","b类型"]]

dataFormat : function(type,key){
       return formatArray[type][key];
    }

需要格式状态的时候传type=0,需要格式类型的时候传type=1

3、每一个传到后台的参数都需要检验,检验,再检验,包括pageSize

猜你喜欢

转载自blog.csdn.net/qq_32939679/article/details/81133323
04