① js判斷兩個對象的值是否相等
判斷對象相等的步驟:
1.先判斷倆者是不是對象
2.是對象後倆者長度是否一致
3.判斷倆個對象的所有key值是否相等相同
4.判斷倆個對象的相應的key對應的值是否相同
來一個遞歸判斷裡面的對象循環1-4步驟代碼如下:
diff(obj1,obj2){
console.log('obj12'+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 diff(obj1[attr],obj2[attr]);
}else if(obj1[attr] !== obj2[attr]){
return false;
}
}
return true;
}
② 求一段判斷時間是否過期的js
Date.prototype.diff=function(date){
return(this.getTime()-date.getTime())/(24*60*60*1000);
}
vardate=newDate("2015-10-11");
varnow=newDate();
vardiff=now.diif(date);//時間差,單位天
③ JS 時間相減得出天數
// 給日期類對象添加日期差方法,返回日期與diff參數日期的時間差,單位為天內
Date.prototype.diff = function(date){
return (this.getTime() - date.getTime())/(24 * 60 * 60 * 1000);
}
// 構造兩個日期,分別是系統容時間和2013/04/08 12:43:45
var now = new Date();
var date = new Date(/04/08 12:43:45');
// 調用日期差方法,求得參數日期與系統時間相差的天數
var diff = now.diff(date);
// 列印日期差
alert(diff);