JavaScript:js常用工具筆記
阿新 • • 發佈:2019-01-09
Date.prototype.Format = function(fmt) { var o = { "M+" : this.getMonth() + 1, // 月份 "d+" : this.getDate(), // 日 "h+" : this.getHours(), // 小時 "m+" : this.getMinutes(), // 分 "s+" : this.getSeconds(), // 秒 "q+" : Math.floor((this.getMonth() + 3) / 3), // 季度 "S" : this.getMilliseconds() // 毫秒 }; if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "") .substr(4 - RegExp.$1.length)); for ( var k in o) if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length))); return fmt; };
Date.prototype.addDays = function(d) { this.setDate(this.getDate() + d); }; Date.prototype.addWeeks = function(w) { this.addDays(w * 7); }; Date.prototype.addMonths = function(m) { var d = this.getDate(); this.setMonth(this.getMonth() + m); if (this.getDate() < d) this.setDate(0); }; Date.prototype.addYears = function(y) { var m = this.getMonth(); this.setFullYear(this.getFullYear() + y); if (m < this.getMonth()) { this.setDate(0); } };
// 測試 var now = new Date(); now.addDays(1);//加減日期操作 // alert(now.Format("yyyy-MM-dd")); Date.prototype.dateDiff = function(interval, endTime) { switch (interval) { case "s": // 計算秒差 return parseInt((endTime - this) / 1000); case "n": // 計算分差 return parseInt((endTime - this) / 60000); case "h": // 計算時差 return parseInt((endTime - this) / 3600000); case "d": // 計算日差 return parseInt((endTime - this) / 86400000); case "w": // 計算周差 return parseInt((endTime - this) / (86400000 * 7)); case "m": // 計算月差 return (endTime.getMonth() + 1) + ((endTime.getFullYear() - this.getFullYear()) * 12) - (this.getMonth() + 1); case "y": // 計算年差 return endTime.getFullYear() - this.getFullYear(); default: // 輸入有誤 return undefined; } }
/**
* 需引入 <script src="js/jquery-2.0.3.min.js"></script> <script
* src="js/bootstrap.min.js"></script>
*/
var start2end = function() {
var startDate = new Date();
startDate.setDate(startDate.getDate() - 31);
$("#startDate").val(startDate.Format("yyyy-MM-dd"));
var endDate = new Date();
endDate.setDate(endDate.getDate() - 1);
$("#endDate").val(endDate.Format("yyyy-MM-dd"));
$("#startDate").datepicker({
dateFormat : "yy-mm-dd"
});
$("#endDate").datepicker({
dateFormat : "yy-mm-dd"
});
};
var start_end = function(gap) {
var startDate = new Date();
startDate.setDate(startDate.getDate() - gap);
$("#startDate").val(startDate.Format("yyyy-MM-dd"));
var endDate = new Date();
endDate.setDate(endDate.getDate() - 1);
$("#endDate").val(endDate.Format("yyyy-MM-dd"));
$("#startDate").datepicker({
dateFormat : "yy-mm-dd"
});
$("#endDate").datepicker({
dateFormat : "yy-mm-dd"
});
};
/**
* 需引入 <link href="css/datepicker.css" rel="stylesheet"> <script
* src="js/jquery-2.0.3.min.js"></script> <script
* src="js/bootstrap-datepicker.js"></script>
*/
var months = function() {
var today = new Date();
today.setDate(today.getDate());
$("#month").val(today.Format("yyyy-MM"));
$("#month").datepicker({
format : "yyyy-mm",
viewMode : 1,
minViewMode : 1
});
};
Array.prototype.isInArray = function(e) {
for (i = 0; i < this.length; i++) {
if (this[i] == e)
return true;
}
return false;
}
Number.prototype.toPercent = function(){
return (Math.round(this * 10000)/100).toFixed(2) + '%';
}
var getDate = function(time){
var date = new Date(time);
var dt = date.getFullYear() +"-"+(date.getMonth()+1)+"-"+date.getDate();
return dt;
};
var getMsc = function(yyyy,mm,dd){
var date = new Date(yyyy,mm-1,dd);
return date.getTime();
};
var t1 = getMsc(2014,6,10);
var t2 = getMsc(2014,6,22);