一起来存方法

来源:互联网 发布:hbulider js无法跳转 编辑:程序博客网 时间:2024/05/29 13:22

很喜欢写一些小方法或伪代码模型存起来,以后就可以直接拿来用了,虽然还是菜鸟一只,但爷爷都是从孙子过来的嘛,下面贴上本周用到的几个小例子

1.在动态渲染元素的时候,需要逻辑判断

  在循环渲染dom元素时,循环遍历中需要逻辑操作,如果不使用模板:
  

      var addList = function(){      var lists= [],list="";      $.each(data,function(i,item){        if(条件1){          list+="<li>"+$(item).val()+"</li>";        }        if(条件2){          list+="<li>"+$(item).val()+"</li>";        }       lists.push(list);     });     $("#id").html(lists.join(""));   } 

  这是在看一同事代码时,发现她用pushjoin方法,渲染元素,觉得不多很显然即使正在渲染元素的循环中,可以方便的进行逻辑操作,用list+=即使渲染元素较多,也使得代码很规整;

2.从一个json取相应属性创建另一个json对象

    var createJsonObj=function(data){     var jsonObj = [];         $.each(data,function(i,item){       var innerObj = {         key:"",         value:""       };       innerObj.key = item.id;       innerObj.value = item.name;       jsonObj.push(innerObj);     });     return jsonObj;   }

  以上是创建一个[{“key”:"XXX","value":"XXX"},{“key”:"XXX","value":"XXX"}]的json对象的简单小例子,大家可以试试考虑更好的封装,将传入新对象的key值实现自定义。

3.js获取日期的一些小操作

  这个网上也有很多例子,本周主要遇到下面两个操作
  

 var jsDate = {     //获取当前2014-06-12 16:55格式日期     getTime:function(date){        var year="",month="",day="",hour="",minute="",time="",oldday="";        if(date){         oldday=new Date(date.getTime()-3600*1000*24*7);         year= oldday.getFullYear();         month= oldday.getMonth()+1;         day = oldday.getDate();         hour = oldday.getHours();         minute = oldday.getMinutes();       }else{         var now= new Date();         year = now.getFullYear();         month = now.getMonth()+1;         day = now.getDate();         hour = now.getHours();         minute = now.getMinutes();       }        if(month<10){         month='0'+month;       }       if(day<10){         day='0'+day;       }         if(hour<10){         hour = '0' + hour;       }       if(minute<10){         minute='0'+minute       }       time = (year+"-"+month+"-"+day+" "+hour+":"+minute);       return time;     },     // 计算相差n天日期     subTime:function(date,n){       date = new Date(date)       date = date.valueOf()       date = date - n * 24 * 60 * 60 * 1000       date = new Date(date)       date = jsDate.getTime(date);       return date;     }   }

  上例主要是理清一些js时间的补零问题,以及取各个时间的获取演示

4.逻辑判断多的时候,采用如下方式,规整代码

   var bo1 = false,bo2 = false,bo3=false;   if(条件1){     bo1 = false;     逻辑操作1   }   if(条件2){     bo2 = false;     逻辑操作2   }   if(条件3){     bo3 = false;     逻辑操作3   }   if(bo1&&bo2){     逻辑操作4   }   ...

  可能这种看起来更烦了,但可能个人习惯,偏爱这种
此贴是6月份发于个人笔记里的,现在已有很多改进,还未整理…

原创粉丝点击