Here you can find the source of dateDiff(interval, objDate2)
Date.prototype.dateDiff = function (interval, objDate2) { var d = this, i = {}, t = d.getTime(), t2 = objDate2.getTime(); i['y'] = objDate2.getFullYear() - d.getFullYear(); i['q'] = i['y'] * 4 + Math.floor(objDate2.getMonth() / 4) - Math.floor(d.getMonth() / 4); i['m'] = i['y'] * 12 + objDate2.getMonth() - d.getMonth(); i['ms'] = objDate2.getTime() - d.getTime(); i['w'] = Math.floor((t2 + 345600000) / (604800000)) - Math.floor((t + 345600000) / (604800000)); i['d'] = Math.floor(t2 / 86400000) - Math.floor(t / 86400000); i['h'] = Math.floor(t2 / 3600000) - Math.floor(t / 3600000); i['n'] = Math.floor(t2 / 60000) - Math.floor(t / 60000); i['s'] = Math.floor(t2 / 1000) - Math.floor(t / 1000); return i[interval]; };
Date.prototype.dateDiff = function(date) { return ((this - new Date(date)) / 1000 / 60 / 60 / 24) + 1; };
Date.prototype.dateDiff = function(date){ var left = new Date(this.getFullYear(),this.getMonth(),this.getDate()); var right = new Date(date.getFullYear(),date.getMonth(),date.getDate()); return parseInt((left - right)/1000/60/60/24); };
Date.prototype.dateDiff = function (date,flag) { var msCount; var diff = this.getTime() - date.getTime(); switch (flag) { case "ms": msCount = 1; break; case "s": msCount = 1000; ...
Date.prototype.dateDiff = function (otherDate) { return (this.getTime() - otherDate.getTime()) / 1000 / 60 / 60 / 24; };
Date.prototype.toMMDDYYYYString = Date.prototype.toMMDDYYYYString || function () {return isNaN (this) ? 'NaN' : [this.getMonth() > 8 ? this.getMonth() + 1 : '0' + (this.getMonth() + 1), this.getDate() > 9 ? this.getDate() : '0' + this.getDate(), this.getFullYear()].join('/')}; Date.dateDiffInDays = Date.dateDiffInDays || function (a, b) { var _MS_PER_DAY = 1000 * 60 * 60 * 24; var utc1 = Date.UTC(a.getFullYear(), a.getMonth(), a.getDate()); var utc2 = Date.UTC(b.getFullYear(), b.getMonth(), b.getDate()); return Math.floor((utc2 - utc1) / _MS_PER_DAY); };