JavaScript 用到的一些常用方法總結

1、判斷兩個對象是否相等

    different(obj1,obj2){
        var o1 = obj1 instanceof Object;
        var o2 = obj2 instanceof Object;
        if(!o1 || !o2){
            return obj1 === obj2;
        }
        if(Object.keys(obj1).length !== Object.keys(obj2).length){
            return false;
        }
        for(var attr in obj1){
            var t1 = obj1[attr] instanceof Object;
            var t2 = obj2[attr] instanceof Object;
            if(t1 && t2){
                return this.diff(obj1[attr],obj2[attr]);
            }else if(obj1[attr] !== obj2[attr]){
                return false;
            }
        }
        return true;
    },

2、複製一個對象

    objDeepCopy(source) {
        var sourceCopy = source instanceof Array ? [] : {};
        for (var item in source) {
            sourceCopy[item] = typeof source[item] === 'object' ? this.objDeepCopy(source[item]) : source[item];
        }
        return sourceCopy;
    },

3、判斷兩個日期間隔的天數

   dateDifferent(Date1,Date2) { 
        var newDate1 = new Date(Date1);
        var newDate2 = new Date(Date2);
        var Days ;
        Days = parseInt(Math.abs(newDate1 - newDate2) / 1000 / 60 / 60 / 24); //把差的毫秒數轉換爲天數  
        return Days;
    },

4、格式化時間:2018-12-12 12:12格式:

   formatTime: function(time){
       var date = new Date(time); 
       var hours =  date.getHours()>=10?date.getHours():('0'+date.getHours());
       var minutes =  date.getMinutes()>=10?date.getMinutes():('0'+date.getMinutes());
       var dateValue=date.getFullYear() + '-' + (date.getMonth() + 1) + '-' + date.getDate() + ' ' + hours + ':' + minutes;
       return dateValue;
   }

5、獲取n天前(n<0)或者n天后(n>0)的日期:

      fun_date(n){
          var date2 = new Date();
          date2.setDate(new Date().getDate()+n);
          var time2 = date2.getFullYear()+"-"+(date2.getMonth()+1)+"-"+date2.getDate();
          return time2
      },
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章